前端框架不断推新,众多IT企业都面临着“如何选择框架”,“是否需要再造轮子”的抉择。去哪儿网前端架构师司徒正美分析了各主流行框架优劣点、适用场景,并针对不同规模的公司、项目给出了相应的前端技术选择方案。
最近几年,前端技术迅猛发展,差不多每年都会冒出一款主流的框架。 每次新开业务线或启动新项目时,首先之一件事就是纠结:使用什么框架,重造什么轮子?
Require *** ,前端技术发展分水岭
在五六年前,移动端还没有兴起,我们没有什么选择,就是jQuery。有人会说,jQuery只是类库,不是框架;但那时前端业务还没有像今天这么繁重,原本是后端干的事,全部挪到前端来,因为光是jQuery就可以包打天下。jQuery不够用,还有成千上万的jQuery的插件呢。于是问题就是这样一一衍生出来了,一个页面太多jQuery插件了,请求数太多了,于是我们得打包。打包需要我们对插件有规划。于是这一需求在社区上逐渐形成了某些规则,其中最出名的是AMD规范,体现上Require *** 这个加载库上。
Require *** 是前端技术发展上的一个分水岭。JavaScript在ES6之前一直没有自己的加载机制,Require *** 的出现意味着前端可以向更大规模发展。以后我说的技术选型,一个非常重要的甄选点, 即是否存在加载器机制或符合某个模块规范。
选择前端框架应综合考虑框架本身与团队情况
回到原来的话题,选择框架要从两面看,一是看该框架的本领,二是看你们团队的能耐。
从框架的角度来看, 它的功能丰富不丰富、社区活跃度如何、国内社区活跃度如何(有的在国外流行,但国内只有初创公司或一些大公司的边缘项目在试水)、文档齐全与否、是否及时更新、测试覆盖率如何、上手难易度如何,都是我们考量点。不过能进我们视野内的外国框架,基本是身经百战,在造轮子兴盛的世界闯出来的领头羊。jQuery、Angular、KnockOut、Emberjs、Polymer、React、Backbone、Zepto,我们基本是围绕在这几个上面转了。当然还有更大型的东西,如EXT、 YUI、Dojo、EasyUI、Bootstrap,这是UI库层面的。
下面是2012年外国对当时流行12个JavasScript MVC框架的纯技术评估:
显然,我们之一步就是圈定时下更流行的框架与库作为评估对象,然后再根据自家公司的情况进行筛选。贵公司是建站公司,还是有自己产品的公司呢?如果是建站公司,页面不会复杂到哪里去,基本上jQuery+Bootstrap搞定,不要想得太多,就是它们。如果有自己产品, 要维护一大堆客户数据,要与客户打交道,不难想象存在非常复杂的CRM系统,按照中国人的特性,这东西只会越来越复杂,这就要慎重考虑了。这往往是持续十年的维护升级,我们需要看一下某框架是否有你们的产品那么长寿,这框架的升级更新是否频繁平缓。
大工程应尽量避开谷歌产品
如果你的项目是一个跨度三年以上的大工程,用《人月神话》的术语来说,90%就是个焦油坑。我们需要使用更稳健成熟的技术方案,我们需要重点避开谷歌的产品,它的许多产品都是玩票性质,GWT、Closure、Darty就是前车之鉴。Polymer基于许多新技术构建,其中Object.observe()、 Custom Elements、HTML Imports、Shadow DOM、Model-Driven Views还远远没被标准化, 许多还是独家的,变数太大,因此才出现下图所示的悲剧。 Angular不是我黑它,这东西也喜欢断崖式升级,它在1.08时兼容IE6-8,1.2时需要打补丁兼容旧式IE,1.3摒弃了对旧式IE的兼容,直接在源码中删除了所有兼容代码,因此所有补丁方案都无力回天,并且不支持全局Ctrl函数,许多模块需要独立引
如今应用微信付款早已十分广泛,国庆假期里,群众消費会更为经常,但是警察提示還是要小心这里边隐匿的骗术。 9月13日...
微差事是一个互联网技术众包平台,企业发每日任务,大家接活,并得到 一定的赢利。 很好,微差事就是一款依据手机人人快递得到 零花钱的应用,平时没事儿都可以运用,就 是每日任务有点少,可是整体而言...
不知道你有没有传闻过百滋百特甜甜圈加盟项目呢?假如传闻过而且想要加盟的话,那么此刻百滋百特甜甜圈,文章长短常适合你的。百滋百特甜甜圈加盟项目在市场上创立多年,品牌形象早就已经深入人心,深受宽大消费者的...
黑客需要学什么 1. 学习如何编程。这一条无须多说,当然是最基本的黑客技能。如果你还不会任何编程语言,我建议你从 Python 开始学起。它设计清晰,文档齐全,而且对初学者比较友好。虽然它很适合搜卖作...
打开微信,点击发现,小程序,搜索找找群并点击进入,选择高级搜索下方的点击进入,确定即可搜索出来群二维码。 微信群人人都不生疏,一个微信群可以聚集一个种别的同伙,有时候家人群,同事群,密友兄弟闺蜜群多了...
商务们平常报名参加的拍摄有很多,“预定深圳商务平面图拍摄,参加深圳高档陪游聚会活动”例如內衣拍摄模特拍摄,淘宝服装拍摄及其礼服裙拍摄及其婚纱礼服拍摄,这种拍摄都能够给这种商务们产生非常大的名气,“预定...