第一阶段:库/框架选型前端工程建设的第一项任务就是根据项目特征进行技术选型。基本上现在没有人完全从0开始做网站,哪怕是政府项目用个jquery都很正常吧,React/Angularjs等框架横空出世,解放了不少生产力,合理的技术选型可以为项目节省许多工程量这点毋庸置疑。第二阶段:简单构建优化选型之后基本上就可以开始敲码了,不过光解决开发效率还不够,必须要兼顾运行性能。前端工程进行到第二阶段会选型一种构建工具,对代码进行压缩,校验,之后再以页面为单位进行简单的资源合并。第三阶段:JS/CSS模块化开发分而治之是软件工程中的重要思想,是复杂系统开发和维护的基石,这点放在前端开发中同样适用。在解决了基本开发效率运行效率问题之后,前端团队开始思考维护效率,模块化是目前前端最流行的分治手段。JS模块化方案很多,AMD/CommonJS/UMD/ES6Module等,对应的框架和工具也一大堆。CSS模块化开发基本都是在less、sass、stylus等预处理器的import/mixin特性支持下实现的。第四阶段:组件化开发与资源管理前端作为一种GUI软件,光有JS/CSS的模块化还不够,对于UI组件的分治也有着同样迫切的需求。组件化开发具有较高的通用性,无论是前端渲染的单页面应用,还是后端模板渲染的多页面应用,组件化开发的概念都能适用。模块化/组件化开发之后,我们最终要解决的,就是模块/组件加载的技术问题。