每天一个技术知识:什么是前端工程化

大家好,我是大澈!

今天不搞技术知识,来聊一聊技术理论。受谭光志老师所写前端工程化文章的启发,深有感触,总结一下自己对前端工程化的一些理解心得,分享给兄弟们。

一、定义

前端工程化是软件工程在前端方面的应用,指通过工具、流程和最佳实践,提升前端开发效率、代码质量和可维护性。

很牛的一段解释,好吧,我不太理解~

我觉得,前端工程化就是,让前端项目的完整开发流程从“手工小作坊”变成“现代化流水线”,从而规范有序、分工明确、全自动化、安全可控、速度嘎嘎,进而干的更快、做的更好。

所以,看一个公司牛不牛,就看他前端工程化做的好不好、全不全。

二、什么时候开始做工程化

越早越好~

我觉得,在需求评审阶段就该做工程化了,并且要根据需求及时的变更工程化的方案细节,随机应变是王道。

三、工程化要做什么

实现一个较为完整的前端工程化,包括:技术选型、统一规范、前端组件化、测试、构建工具、自动化部署、前端监控、性能优化、重构、微服务、Severless。

以一个项目的生命周期为例:

1、接到新需求,进行需求评审后根据具体情况做技术选型。

这一步我认为是最基础,也是最重要的,前端新技术栈很多,一定要选择最合适且最高效的技术栈,别搞到最后,发现不合适再去考虑重构,费时费力,得不偿失。

2、开发前需要统一规范。

可以参考大厂代码标准规范,这个可以有效防止队友间暗地互怼,没有为什么。

3、模块化开发、组件化开发。

代码基本功,也是个好习惯,让写的代码更加具有条理性。

4、开发完,需要对代码进行测试。

技术栈:单元测试、端对端(E2E)测试。

测试这里感兴趣的兄弟,可以去看看阿崔老师的前端测试课,看过我觉得讲的还不错。

5、构建打包。

技术栈:Vite

这个深挖就完事了,挖透了前端也就透了。

6、部署上线。

技术栈:Dockerk8sJenkins

所谓的运维部署三件套,前后端兄弟们都要会哦。

7、对项目进行监控,随时发现问题。

技术栈:Sentry

个人所欠缺的一块,涉猎甚少,抓紧学起来。

8、根据项目运行情况决定是否要做性能优化。

9、项目越来越复杂,需要重构以提高可维护性。

10、项目越来越大,可以考虑是否用微服务对其进行拆分。

技术栈:qiankun

对于大型应用的开发和维护,使用微前端能让我们变得更加轻松。不过如果是小应用,建议还是单独建一个项目开发。

11、不想自己管理服务器或数据库,可以考虑使用 Serverless

Serverless 最大的优点就是弹性扩容和无需亲自管理服务器,最近很火的技术,值得探索一下。

- end -

承接产品推广/软件开发/bug修复,联系和更多内容在绿色App搜@程序员大澈:专注于前后端技术知识分享,最后感谢兄弟们给个点赞、分享、推荐!

原文链接:,转发请注明来源!