浅析angular,react,vue.js jQuery-1

作者:尚春

链接:https://www.zhihu.com/question/38989845/answer/79201080

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

技术的复杂性也分两个维度:概念和实现。Vue、React、Angular 三者来说的话:

  • 概念上:Vue ≈ React << Angular
  • 实现上:Vue << React < Angular。React 的实现确实有些过度
三者有相通之处,例如组件化,这是大势所趋。三者也有一些差别,我对 React 和 Angular 接触较多,先说这两个:
  • Angular 适用于 Web 前端资源偏紧的团队和富交互、对性能 / SEO 要求不高的业务。一般刚刚起步而且没有专业前端的团队我会建议他们用 Angular。Java 系程序员对 Angular 的很多概念都很容易理解呢
  • React 适用于有一定规模的业务和团队,因为这通常意味着复用的需求较为强烈
  • Vue 更加轻量一些,我判断比较适用于对有一定自研能力的团队,能够基于 Vue 做一些新轮子出来满足业务线
基于以上的分析,说下我对发展趋势的判断:
  • 随着前端工程师数量的增加和专业能力的进步,用 Vue 这类小而美方案的团队会增加
  • 随着 React Native 这类 JS2Native 技术的发展,React 会加速发展,比 15 年更快
  • Angular 这类重型方案也会有一定增长,毕竟整个大盘在涨
总体上是 React > Vue > Angular

1.jquery依然依靠丰富的dom操作去组合业务逻辑,当业务逻辑复杂的时候,每行代码都会有不知所云的感觉。因为:

  • 第一:业务逻辑和UI更改该混在一起,
  • 第二:UI里面还参杂这交互逻辑,让本来混乱的逻辑更加混乱。

当然第二点从另一方面看也是优点,因为有的时候UI交互逻辑能够更加灵活地嵌入到业务逻辑,这在其他MV*框架中都是比较难处理的。

2.vuejs非常小清新,小清新不代表做不了复杂的东西,比如官方的这个demo就不错:http://vuejs.org/examples/svg.html

3.reactjs代码量最多,因为它既要管理UI逻辑,又要操心dom的渲染。

4.extjs无感 没用过。

5.angularjs渲染快,就是量大(相对于vue.js)。