前端工程化浅识

最近看了很多关于前端工程化的文章,记录一下自己的简单理解。

前记(废话):日益复杂的前端业务已经前端技术的飞速发展,现在已经不是刚刚兴起时的html+css+javascript以及搭配一个的jquery就走遍天下的时代了,各种前端mvvm框架,ui库,各种轮子,造轮子能力,打包工具,前端测试工具。。。并且还在不停地更新,前端这个曾经被误认为最低门槛的岗位,变得日益“不凡”。开发一个项目需要更完善的流程、更高的效率、更好的规范,渐渐地,开始要用软件工程思想进行前端项目的管理。

前端工程化的四个特性:模块化、组件化、规范化、自动化

模块化:目标是项目的文件,而不是项目中的功能模块,就是将一个大文件拆分成相互依赖的小文件,再进行统一的拼装和加载,  简单来说存在:js文件的模块化,css文件的模块化,资源的模块化

组件化: 将原来都在一个页面的各个不同的界面或者功能,合理抽离出来做成一个个组件,从UI拆分下来的每个包含模板(HTML)+样式(CSS)+逻辑(JS)功能完备的结构单元,我们称之为组件。各个组件之间重新组建一个完整页面,组件化也提高了代码的复用率,提高效率,当然这需要我们有意识去开发复用性更好的组件

规范化:目录结构的制定,编码规范,前后端接口规范,文档规范,组件管理,Git分支管理,Commit描述规范。。。等等,一切一切可以规范项目开发过程中各个步骤的流程,让项目开发进行得更加流畅的方法。

自动化:前端发展到今天,各种自动化的工具,包括图标合并, 持续集成,自动化构建,自动化部署,自动化测试。。。各种可以用自动化工具去进行的一些非编码操作,但是必须进行的动作,webpack、ci、jest等等工具进行。

 

前端工程化说到底就是为了规范前端项目开发流程,提高前端开发效率,让整个前端开发思想趋向于于软件工程的思想,让整个开发更加可控,每个环节都有理可寻,每个文件都有结构美,整个开发过程更加优雅,不再“一锅炖”。

你可能感兴趣的:(前端工程化)