前端工程化

174 阅读2分钟

思想

工程化是一种思想不是某种技术。

现在前端的痛点

  • 重复的工作很好,耗时费力,如压缩、打包、上传等
  • 代码可维护性差,(可复用的代码到处复制,不能保证代码的一致性,需要更改时,需要挨个改)
  • 项目业务线较多时,技术方案不统一,技术复用率低
  • 开发人员风格不统一,团队协作规范有时会是口头协定,协作效率低,代码维护困难

面对上述问题,前端工程化应运而生

所谓工程化即系统化、模块化、规范化的一个过程,前端工程化包含模块化、组件化、规范化、自动化四个方面。解决的问题时如何提高编码、测试、维护阶段的生产效率。

模块化

定义:模块化就是将一个大文件拆分成相互依赖的小文件,按一个个模块来划分,再进行统一的管理。

举例:

  • JS模块化:使用CommonJS、ES6 Module等组织代码
  • CSS模块化:使用less、sass等预处理器组织代码
  • 资源模块化:NPM包等
组件化

组件化实现了对一套相关的试图和逻辑的复用,降低重复代码,提高开发效率。

规范化

目标:制定各项规范,便于团队协作和代码维护,提高应用质量

  • 统一编码规范、目录创建和文件命名规范
  • 开发流程规范
  • 文档规范
自动化

目标:提高效率,解放人力,开发人员更加专注应用质量

  • 使用构建打包工具、脚手架工具、mock工具等
  • CI(持续集成)过程中自动进行质量检测、代码风险统计、质量评估
  • CDE(持续交付)过程中自动进行代码功能测试,将测试结果反馈开发者
  • CD(持续部署)过程自动部署代码到生产环境