一、什么是前端工程化
了解前端工程话之前,先了解下什么是工程化。
毕业于计算机相关系的同学,应该都听过一个名词:软件工程。
软件工程:是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。
系统性的、规范化的、可定量的过程化方法去开发和维护软件,这不就是前端要做的事吗,或者说,这不就是程序员们要做的事吗。
二、解决什么问题
既然要解决,那么肯定是现在或者将来会存在的问题,才需要解决。那么日常工作中,有哪些问题?
- 项目难以维护
到处使用的弹窗,需要修改业务的时候,要修改很多地方;每个人都有自己的编码规范,项目代码混乱,难以阅读;git命名、提交信息混乱; - 工作效率低下
一个日期格式化函数,一个从url获取参数的函数,每个人都实现了一遍,不仅耗时,也增加项目体积;图片需要上传到cdn,每个人都需要去自己手动上传,容易出错,也浪费时间; - 低级bug较多
参数类型不对;不小心多打了一个字符; - 用工成本大
五花八门的技术栈和业务实现方式,导致需要专门的人来维护,甚至需要比较有经验的人来维护;
总结下来:维稳、提效、降本
三、包含什么内容
本文参考zhihiu大神【徐海峰】关于前端工程化的回答