定义
- 遵循一定的标准和规范,通过工具去提高效率,降低成本的一种手段
- 工程化 != 某个工具(工具可以理解为模块)
- 工程化的 核心 是对项目整体的一种规划或者架构。工具则是实现这种规划或架构的一种手段
主要解决的问题
- 传统语言或语法的弊端
- 无法使用模块化 / 组件化
- 重复的机械式工作
- 代码风格统一、质量保证
- 依赖后端服务接口支持
- 整体依赖后端项目
工程化表现
一切以提高效率、降低成本、质量保证为目的的手段,都属于‘工程化’
创建项目 阶段
在创建的过程中,使用脚手架工具,自动帮我们进行基础搭建
- 创建项目结构
- 创建特定类型文件
编码 阶段
可以借助于自动化的工具,做代码格式化、代码风格的校验,从而确保我们每个开发人员写出来的代码风格一致
可以借助编译工具,让我们在开发阶段可以使用一些新的特性,提高我们编码的效率
- 格式化代码
- 校验代码风格
- 编译/构建/打包
预览 / 测试 阶段
借助工具,使开发阶段更有效率,更加准确
- web server : 运行前端代码 / mock : 仿造后端接口工具
- live reloading : 热更新工具 / HMR
- Source Map : 快速定位到代码错误处
提交 阶段
- git hooks :对项目代码质量的检查
- lint-staged
- 持续集成
部署 阶段
避免手动发布时,造成的错误
- CI / CD
- 自动发布