什么是"前端工程化"?

 我来答
百度网友00e012a

2020-05-14 · TA获得超过2783个赞
知道大有可为答主
回答量:2262
采纳率:60%
帮助的人:111万
展开全部

前端工程化是指使用软件工程的技术和方法来进行前端的开发流程、技术、工具、经验等规范化、标准化。其主要目的为了提高效率和降低成本,即提高开发过程中的开发效率,减少不必要的重复工作时间。

前端工程化是前端架构中重要的一环,主要就是为了解决上述大部分问题的。而前端工程本质上是软件工程的一种,因此我们应该从软件工程的角度来研究前端工程。

前端工程化有四个特点:模块化、组件化、自动化、规范化。

1、模块化:

就是将一个大文件拆分成相互依赖的小文件,再进行统一的拼装和加载。只有这样,才有多人协助的可能。在工程化之前,一直是使用js、jquery、ajax,这没有模块概念,对于开发大型且复杂的系统会有一定的限制。

2、组件化:

组件化≠模块化。模板化只是在文件层面上,对代码和资源的拆分;组件化是在设计层面上,对于UI的拆分。目前市场上的组件化框架最多,主要的有Vue,React,Angular2。

3、自动化:

“简单重复的工作交给机器来做”,自动化也就是有很多自动化工具代替我们来完成,例如持续集成、自动化构建、自动化部署、自动化测试等等。

4、规范化:(至关重要的一环)

在项目规划初期制定的好坏对于后期的开发有一定影响。包括的规范有:

目录结构的制定、编码规范、前后端接口规范、文档规范、组件管理、Git分支管理、Commit描述规范、定期codeReview、视觉图标规范。

扩展资料:

为什么需要前端工程化:

前端越来越复杂,设计的问题和环节也越来越多,不采用工程化管理,就无法很好的实现团队协同和降低复杂性。 原因如下:

1、前端范畴不断扩大

早期的前端只需要适配桌面浏览器,而现在的前端,需要适配不同类型和尺寸的设备,包括移动端网页,app应用等。

2、前后端分离

早期的前端只是后端 MVC 框架的一层模块, 而现在的前端普遍是从后端接口获取数据,编写处理逻辑,各种前端mvc前端框架也层出不穷。

3、模块化开发的出现

现在的前端开发不再是从零写起,重复造轮子,而是会引用大量内部和外部的组件和模块,这也导致前端必须进行模块管理。

4、转码器的盛行

为了提高效率,前端工程往往不会直接写html,css,和js代码,而是改用其他格式书写,再用工具编译为目标格式。

比如用Jade 写HTML,用less、sass、stylus 编写CSS,用ES6、Typescript编写JavaScript。

5、开发流程和团队

早期的前端团队往往只有几个人,而现在的前端团队可以扩展到几十人,甚至上百人。每个人只负责自己的一块内容。所以,如何协调多人多团队的工作,保证沟通顺畅,保证权限管理,越来越成为一大问题。

前端工程化的具体内容:

1、代码规范: 保证团队所有成员以同样的规范开发代码。

2、分支管理: 不同的开发人员开发不同的功能或组件,按照统一的流程合并到主干。

3、模块管理: 一方面,团队引用的模块应该是规范的;另一方面,必须保证这些模块可以正确的加入到最终编译好的包文件中。

4、自动化测试:为了保证和并进主干的代码达到质量标准,必须有测试,而且测试应该是自动化的,可以回归的;

5、构建:主干更新以后,自动将代码编译为最终的目标格式,并且准备好各种静态资源;

6、部署:将构建好的代码部署到生产环境。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式