昨天公司内部架构师峰会的讨论了前端发展趋势,听完对迷茫的我有了一丝被点醒的感受,如今整理分享给你,但愿对你有所收获。html
前端在生产和开发中占据着愈来愈重要的地位,PC端、手机端、桌面端、智能手表端等等设备都离不开前端的身影。而想要踏入以及已经踏入前端的小伙伴也愈来愈多,下面我将围绕编程语言、前端工程化、开发框架、小程序+AR+AI、大数据可视化、移动/web AI架构,这六个方面进行分享。前端
目前的设备平台包括安卓、IOS、PC、其余移动设备,相应的后台编程语言也有Kotlin、Swift、Java、PHP、Go等,而前端的主攻领域高度重合,这也就意味着不论哪一个平台、与哪一个后台语言结合,前端三剑客html、CSS、JavaScript总能从里面分到一杯羹,由于它就是为了界面和交互而生的。当前前端社区高度活跃,ECMAScript也在快速的发展,在编程语言类的统计中,JavaScript总能轻松排到前三,这就是这个编程语言的魅力所在!程序员
工程化的一个体现就是模块化。以前进行项目开发都是想到哪里就写到哪里,这在单人开发的时候问题不是很明显,但在多人协做中这是致命的,变量名冲突将致使系统运行出错,为了解决这一问题,人们只能起愈来愈长的变量名,但同时由于没有规范,这些变量名在团队其余人看起来并不容易理解。后来人们开始用闭包来解决,再到后来的探索AMD、CMD等方式也被人们逐渐运用,直到ES6的模块化语法推行才改变了这一方案,如今ES6的模块化语法也是当前主流最多见的模块化解决方案。web
在不使用框架以前,咱们所开发的代码基本都是MVC架构或者MVP架构的,这样的一个缺点就是性能问题,当用户修改dom元素的时候,页面就要进行相应的回流和重绘,这必将会形成必定的用户等待时间。而框架的产生就解决了这一问题,咱们所了解的三大框架都是MVVM架构的,利用数据驱动视图,再将虚拟DOM渲染到页面上,这样就能很好的解决前端性能问题;同时框架是有高复用性的,咱们能够写一些公共组件,在须要的地方调用它,这样代码可读性和可维护性都会变得更好。编程
随着各家推出相应的小程序的时候,AR加强现实技术和AI人工智能技术也在逐渐发展,以微信小程序为例,它依托于微信的生态,微信小程序能够直接使用微信官方提供的AR和AI的解决方案。在微信宣布这一技术后,阿玛尼美妆官方精品商城推出了业内首个使用AR+AI加强现实的微信小程序,用户能够直接经过手机完成试色。随着AR和AI技术的逐步发展,必定会有愈来愈多的落地应用来方便用户的。小程序
如今是“数据为王、流量至上”的时代,流量天然没必要多说,有了足够的流量,变现是很简单的。而数据在当今时代也是很是重要的,就像咱们常用的淘宝,他老是能给咱们分发所须要或者将来所须要的产品的广告,淘宝就可以根据用户的使用记录去分析到用户接下来的需求,相信不少程序员的淘宝里总有一些莫名其妙的生发植发广告吧?这就是大数据的力量。可是千万条数据罗列起来确定是晦涩难懂的,数据可视化就是为了解决这一问题,他可以把千万条的数据利用各类图形帮你更好的展示来让你分析。数据可视化当前两个成熟框架分别是ECharts和D3,当咱们可以利用好这两项技术的时候,咱们就能站在数据的顶端!微信小程序
随着人工智能的不断发展,前端人工智能也是必不可少的,而浏览器端所依赖的技术为WebAssembly和WebGL,落实到应用层面,咱们可使用OpenCV.js和ONNX.js这两个框架去操做浏览器,来加强浏览器的智能性。可是单纯去操做浏览器是很慢的,这里面涉及到了CPU、GPU、AI加速器的运算问题,随着问题的暴露,为硬件而生的WebNN API应运而生,它可以帮助咱们的浏览器可以更快的去处理和运算数据。前端AI架构将会是将来前端发展不可分割的一部分,咱们必定要跟上时代的浪潮。前端工程化
以上就是我对峰会的一个记录与分享,但愿使你可以对大前端的发展趋势能有必定的了解,能够给到你接下来学习的前进方向。这是大前端蓬勃发展的时代,前端能作的事情愈来愈多,前端工程师的职责也愈来愈丰富。前端社区高度活跃、前端技术高速发展,咱们应当跟着时代的发展努力加强本身的前端竞争力。必定要坚持不断学习、持续学习的思想,这样才能不被大前端时代所抛弃! 以上就是本文章的所有内容了,若是有不正确的地方欢迎指正。浏览器
感谢您的阅读,若是感受有用不妨点赞/转发。微信
因为我才疏学浅,因此文章未免会有出错的地方,若你发现,但愿你不吝指教,我定当修改~
前端路漫,踩坑不断。
以上2019-10-11。