前端开发之如何理解前端工程化思想
谈到前端工程化问题,总觉得这是一个很大到问题,同时也是一个当前比较热聊到一个前端所面临的问题。其实从前后端分离,前端独立出来,到现在的前端迅速发展,经历的时间并不长,尽管当前有像vue,angular,react这样的框架供开发者使用,也大大提高了效率,但似乎离前端刀耕火种的年代并没有多远。所以前端工程化也就应运而生。
什么是前端工程化?
前端工程化是使用软件工程的技术和方法来进行前端的开发流程、技术、工具、经验等规范化、标准化,其主要目的为了提高效率和降低成本,即提高开发过程中的开发效率,减少不必要的重复工作时间,而前端工程本质上是软件工程的一种,因此我们应该从软件工程的角度来研究前端工程。
如何前端工程化?
前端工程化,需要从四点做起:模块化,组件化,规范化和自动化。
(1)模块化
模块化就是将一个大文件拆分成相互依赖的小文件,再进行统一的拼装和加载。在工程化之前,一直是使用js、jquery、ajax,这没有模块概念,对于开发大型且复杂的系统会有一定的限制。
js模块化:在ES6之前,JavaScript一直没有模块系统,这对开发大型复杂的前端工程造成了巨大的障碍。对此社区制定了一些模块加载方案,如CommonJS、AMD和CMD等。现在ES6已经在语言层面上规定了模块系统,完全可以取代现有的CommonJS和AMD规范,而且使用起来相当简洁,并且有静态加载的特性。
用++Webpack + Babel++将所有模块打包成一个文件同步加载,也可以搭乘多个chunk