GMTC2019会后:做一场冷门的技术专场是什么体验 (2)

可协作云应用非常复杂,可讲的技术点也很多,整体来说@刘怡年的分享还不错,但是仍有一些细节可待改进。我个人有两个建议:第一是ppt中表情包图片不宜过多,当然这也是我的责任,没有把控好ppt终稿的质量;第二是尽量减少一些表面的知识,比如仿射变换这种基础数学对于做图形编程的人来说基本上就是1+1=2,根本不值得单拎出来讲。@刘怡年应该是第一次做公开演讲,希望能够吸取一定的经验吧。

好,流水账就记到这里。总体上这次图形专场比较满意,当然主要得益于四位讲师精彩的分享。现在回到一开始的问题:为什么前端工程师需要具备图形编程能力?

前端似乎一直在试图“抢别人的饭碗”:用Node.js做web server;用RN&Flutter做app。虽然每个技术工种的定义都需要放在特定的时代背景下才有讨论的意义,历史推动人们对前端的重新认知,但是不论前端将来的定位如何,始终不会变的是前端始终聚焦于应用层和表现层,其核心竞争力集中在对交互逻辑和UI的把控,前端架构体系的设计自然也是围绕两者展开。目前来看,Node.js是serverless架构的优秀选型,但支撑大后端还略显吃力。所以即便使用serverless,前端架构的重点仍然是交互逻辑和UI。进一步讲,交互逻辑最终也需要借助UI给予用户反馈,所以UI对前端的重要性不言而喻。掌握一定的图形技术能够帮助开发者在前端架构设计之初进行精准的UI技术选型,哪些用CSS可以实现?哪些用SVG最佳?哪些需要借助Canvas甚至WebGL?这些问题的答案不是选择某一个库或者框架,而是在选择框架之前必须确立的底层技术栈。如果选择了不恰当的底层技术栈,待问题积攒爆发而不得不重构时,其痛苦程度远不是迁移框架能够比拟的。这对于初创团队尤为重要,因为技术选型决定如何打造人才梯队。然而如果对以上这些图形技术只停留在了解的阶段是远远不够的,必须有一定的深入理解和实践才可以精准地选定底层技术栈。比如大家都知道大数据场景下svg由于节点过多而性能上逊于WebGL,但是如果节点数没有接近四位数,那么在现有的浏览器技术背景下为了追求webgl并不明显的性能优势而放弃svg的便捷api、富交互性以及与css的融合性等优势则是得不偿失。

图形技术的最高殿堂必然是游戏,这个观点在跟@徐远同交流中达成了共识。然而游戏是相对独立的领域,跟前端的关联性不大。所以设立图形技术专场的目的并不是吸引更多人加入到图形编程领域,而是希望能够借此机会阐明图形对前端的重要性,即便不是从事图形编程的传统前端工程师也需要关注。甚至更进一步,希望能够引起大家对前端原生技术的重视。这几年各大框架百花齐放,今年Flutter更是一枝独秀,前端工程师们似乎一直被框架牵着鼻子走而一定程度上忽略了原生技术。当然会有人说“流水的框架铁打的思想,用框架是为了学习它的设计理念”,但并非所有的思想都值得借鉴,有些必然会成为时代的弃儿,比如jquery早期版本$(document).ready诡异的实现方案放到今天几乎再没有合适的应用场景。但原生技术,尤其是相对底层的技术是永不过时的。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpdpsx.html