前端工程化是什么
每一个作品的产生都是在所处的特殊环境下产生的,它能存活下来并发散光大的话,一定是真切的解决了某些问题,哪怕只有一点点,但一定都是实实在在的优化。
vue和react、augular的出现,带来的最大变化有两个:前端的去jQuery化,以及开发过程中的前后端分离。
先来说下前后端分离,带来的好处显而易见,前端后端同步开发,集中时间联调,整体的开发效率提升明显,而且各自负责各自的代码,有效的规避了最传统最老的开发模式中,前端完成静态页交给后端开发套数据,样式变了前端再去后端人员那里去调整样式的问题。提高效率,责任明确,还原效果又好,自然要受推崇。
再说,前端本身的变化,数据驱动和组件化,减少DOM分工并更合理的分工,代码耦合性更弱,扩展性更强,不论单人工作还是多人协作,都是向更有利更方便的发现发展的。
优势的概念说明白了,但都是空口白牙话赶话,在后面的学习中会把优势给逐步细化和具体分析,现在先回归主题说一下前端工程化的概念,提起工程化脑海中自然划过的是下图的一个概念。
实话说,第一次接触,感觉像极了一次工业革命,这听起来有点玄,但前端工程化本身就是一个概念性的名词,那要怎么用白话描述一下呢,举个接地气的例子:
我平时喜欢打篮球,上学期间就曾参加许多篮球比赛,工作以后,打球越来越养生,但是还是参与过公司内部和外部的一些比赛,算是个篮球爱好者,比赛中最需要注意的就是比分,要不然咔咔咔进了十几个都不算分,热情都没了。因为水平还是有点次,上学期间打的主要是班级间的一些比赛,那时候的计分方式是这样子得:
一旦进球了,在一片欢呼声中一个小妮儿高兴的翻个分数,等比赛结束了,一群人围着这牌子还要分析感慨一下,有点中二,但是又有点美好。
等工作了,企业之间的比赛开始稍微见识点正规的意思,虽然技术越来越烂了,但吹牛X都开始带范儿了,因为记分牌开始变了:
变成这个样子当然是吹牛X,但总要留有一点梦想,说不定哪天就可以在斯台普斯球馆里看个球照个相呢,好歹也是看过这个记分牌的。看到这里应该大体就能明白了,工程化像一个集大成着,而且规划扩展能力特别强,自动化程度更高,抗风险能力更强,整体更职业。
小体量的开发,计分目的实现了,那零秒出手的争议呢,小动作犯规争议呢,更甚至恶劣天气突降呢,还计分呢,球都没得打。
程序的话内行人都知道,基本上麻雀虽小五脏俱全,再小的项目该有的不会少,最多是复杂程度和扩展功能上的变动,那如何更有效的规划,前端工程化就这样随着时代的潮流应运而生。
然后说些专业名词,是从网上一些摘抄,毕竟做程序最早学会的就是CTRL+C和CTRL+V
前端工程化包含如下:
1.代码规范: 保证团队所有成员以同样的规范开发代码。
2.分支管理: 不同的开发人员开发不同的功能或组件,按照统一的流程合并到主干。
3.模块管理: 一方面,团队引用的模块应该是规范的;另一方面,必须保证这些模块可以正确的加入到最终编译好的包文件中。(以上两点可以总结为模块化或者组件化开发。)
4.自动化测试:为了保证和并进主干的代码达到质量标准,必须有测试,而且测试应该是自动化的,可以回归的。
5.构建:主干更新以后,自动将代码编译为最终的目标格式,并且准备好各种静态资源,
6.部署。 将构建好的代码部署到生产环境。
简单了说,前端工程化主要是从模块化、组件化、规范化、自动化四个方面来思考。
PS:前端工程化大体说这些,后面碰到具体内容再具体讨论吧,摘抄部分因为有几篇文章都是一样的,也就不写摘抄的谁的了,毕竟到我这已经不知道转了几手了,保护原创迫在眉睫啊,但是这样唯一的好处,前端是受益的,就像易烊千玺说的:街舞才是冠军。














网友评论