全国更大诚信黑客接单,网上信誉黑客联系方式两部手机能用

访客4年前黑客文章838

Controlling complexity is the essence of computer programming.
随着前端开发复杂度的日益提升,组件化开发应运而生,并随着 FIS、React 等优秀框架的出现遍地开花。这一过程同样发生在美团,面临业务规模的快速发展和工程师团队的不断扩张,美团历经引入组件化解决资源整合问题、逐步增强组件功能促进开发效率、重新打造新一代组件化方案适应全栈开发和共享共建等阶段,努力“controlling complexity”。本文将介绍美团组件化开发的实践过程。

组件化 1.0:资源重组
在美团早期,前端资源是按照页面或者类似业务页面 *** 的形式进行组织的。例如 order.js 对应订单相关页面的交互,account.css 对应账户相关页面的样式。这种方式在过去的较长一段时间内,持续支撑了整个项目的正常推进,功勋卓著。
2016325100542747.png (1048×600)

随着业务规模的增加和开发团队的扩张,这套机制逐渐显示出它的一些不足:

1.资源冗余

页面的逐渐增加,交互的逐渐复杂化,导致对应的 css 和 js 都有大幅度增长,进而出现为了依赖某个 js 中的一个函数,需要加载整个模块,或者为了使用某个 css 中的部分样式依赖整个 css,冗余资源较多

2.对应关系不直观

没有显而易见的对应规则,导致的一个问题是修改某个业务模块的 css 或者 js 时,几乎只能依靠 grep。靠人来维护页面模块 html、css 和 js 之间的依赖关系,容易犯错,常常出现内容已经删除但是 css 或 js 还存在的问题。

3.难于单元测试

以页面为最小粒度进行资源整合,不同功能的业务模块相互影响,复杂度太高,自动化测试难以推进。
2013 年开始,在调研了 FIS、BEM 等方案之后,结合美团开发框架的实际,美团初步实现了一套轻量级的组件化开发方案。主要的改进是:

1.以页面功能组件为单位聚合前端资源
2.自动加载符合约定的 css、js 资源
3.将业务数据到渲染数据的转换过程独立出来


相关文章

黑客发展前景好吗(黑客技术发展趋势是什么)

黑客发展前景好吗(黑客技术发展趋势是什么)

本文导读目录: 1、黑客有哪些发展方向 2、网络安全的工作前景怎么样? 3、学习网络安全有前途吗? 4、黑客有前途么?黑客有什么工作? 5、网络安全前景怎么样? 6、网络安全行业的...

美媒:钻石行业复苏落寞的句子 戴比尔斯实施近10年来最大

  中新网1月19日电 据美国彭博社报道,随着钻石行业开始从新冠病毒大流行导致的停滞中复苏,钻石生产商戴比尔斯公司实施了近10年来最大幅度的提价。 资料图:钻石。   据知情人士透露,戴比...

阴阳师蛇骨缚心狂欲怎么玩 蛇骨缚心活动狂欲玩法攻略

阴阳师蛇骨缚心狂欲怎么玩 蛇骨缚心活动狂欲玩法攻略

阴阳师蛇骨缚心狂欲怎么玩?蛇骨缚心活动分为狂欲、修行坊、镜花水月、明惑、道成遗藏和执念共6种玩法。今天优游网小编为大家介绍的就是蛇骨缚心活动狂欲玩法攻略了,想要参与此次活动的小伙伴们一起来看看吧!...

屏幕像素密度越高越好吗,屏幕技术的进化趋势

屏幕像素密度越高越好吗,屏幕技术的进化趋势

现在,手机各种软硬件都在飞速换代和改进之中,尤其是显示屏。18比9、全面屏、刘海屏等花样层出不穷。那么从初代iPhone亮相以来,手机屏幕具体经历了什么?本文将会通过数据给大家仔细梳理一番。...

三极管工作原理图解,教你五分钟看懂

三极管工作原理图解,教你五分钟看懂

晶体三极管作为一个常用器件,是构成现代电子世界的重要基石。然而,传统的教科书对其工作原理的讲述却存在有很大问题,使初学者对三极管的工作原理无法正常理解,感到别扭与迷茫。 晶体三极管原理问题的关键在于...

孕妇能喝什么花茶(孕妇多喝什么茶比较好?)

  怀孕的人喝什么花草茶(孕妈妈多喝什么茶比较好?)荼叶中大多数带有茶氨酸、香叶醇、矿物、蛋白、维他命等营养元素。常常食用,能生津解渴,排脂减肥瘦身,对身体有一定的益处。但孕妈妈的身体素质比较独特,稍...