React、Vue、Angular 共分天下,2018头首将会是谁?

要论 2017 年最主流的三个 Web 前端结构,应莫过于 Angular、Vue 和 React 了。然而在实际运用中,这三个结构却不尽相同,对于规模不大的前端项目来说,Vue 因其极易上手会被列出首选之位,Angular 在快速开发大型 Web 项目上很受推崇,但仍存许多缺点,React 正为 JavaScript 运用开发者供给新的开发方式。因此,面对各有千秋的开发结构,作为一名开发者该怎么挑选?哪种结构更具有前景?

接下来,本文作者经过近来最新发布的 JavaScript 调查报告,深度分析前端结构的盛行趋势及未来发展,希望给许多前端开发者指明一些方向。

微信公众号

Stateofjs 2017 前端结构调查成果

与日常一样,运用 JavaScript 编程言语的核心区别是由前端结构引起的。从调查报告来看,比较 Angular 和 Vue, React 是 2017 年的主要 JavaScript 结构,尤其是 React Native 以史无前例的速度提高自己。同时由于 Angular 的盛行度下滑,Vue 也遭到越来越多的欢迎。

微信公众号

相较于 Stateofjs 发布的 2016 年前端结构调查成果:

微信公众号

基于以上,经过将 2017 与 2016 年的统计成果进行对比能够发现,在曩昔一年里 Vue.js 是大家最想学习的结构,因此我个人猜测下一年将是 Vue.js 成功的一年,当然 React 增长很安稳,而 Angular 将无法跟上这两个对手的脚步。2016 年时,Vue.js 被称为“另一个 JS 结构”,其时它是一匹十足的黑马,而 React 占有主导地位,Angular 则是开发者的第二挑选。

可是,Vue.js 只会在 Web 前端中占有主导地位,而不会控制一切的前端范畴。React 则能够在一切的前端范畴中盛行。这是为什么呢?下面,我们将揭开谜底。

React 控制前端范畴的要害因素

答案就在 Stateofjs.com 发布的 2017 年移动和桌面运用前端结构的调查成果之中:

微信公众号

Synergy 是 React 能够控制一切前端范畴的要害。

React Native

Vue.js 未能供给代替 React Native 的可行性方案(Weex 和 Quasar 太年轻,存在碎片化而且很软弱),伴随着 React Native 和 React.js 的爆发式增长,如果你掌握了 Web 前端的 React 和 Redux ,你将取得极大优势:只要你想,便可在几周内熟练地将 React Native 运用到移动端。在这一点上,React 充沛展现了它比较 Cordova 和其他 Hybrid 技能的优势。

现在最火热的前端需求在于移动端,而不再是 Web 。React Native 非常成功,同时它也会带动 React.js 的发展。

运用 Java 和 Swift / Objective C 别离开发不同渠道的 App 虽然没错,可是从商业的角度来看,它的代价是很高的,此外,与 React Native Codepush 比较,想要经过 App Store 的审核也不是那么容易的。

GraphQL

GraphQL 是 Facebook 的另一个重量级产品,它让 React 生态系统如虎添翼。

虽然它当前还不老练,比较复杂 而且有缺点,可是看起来 GraphQL 在未来将有很大可能代替 REST。

GraphQL 标志着前端范畴大多数的创新都发生在 React 圈,然后这些创新再在其他结构中被采用和改进。

Angular 的未来猜测

Stackoverflow 展现了一个有关前端开发人员问题的有趣图表:

微信公众号

Angular 在这张图中看起来很好,但我不并以为这预示着 Angular 作为一个结构能够取得长期成功。在我看来,对于那些保护传统的 Angular 1 代码的开发者来说,从 Angular 1 迁移到 Angular2 + 是一个正确的挑选,可是当他企图迁移而且看到 Angular 的新老版别之间的巨大区别时,这会产生挫败感,而且这个事实也解说了 Stackoverflow 上有大量问题的原因。

Vue.js 的缺点

Vue.js 现在即便还无法支持移动运用,但在 2017 年的其间一段时间,它经过取得开发者的支持而赢得了与 React 的竞争。

Wordpress 正在考虑用 React 来构建其前端布局,而且很可能将 Vue.js 参加 Wordpress 生态系统,就像 Laravel 一样。不过 Facebook 很快就调整了 React 许可证,并将这个想法扼杀了。

写在最终

经过三大结构的对比,我们更倾向于 React,在此也引荐其他的团队根据自身的情况挑选 Vue.js 或 React。基于此,开发者也在 Hacker News (https://news.ycombinator.com/item?id=15999688)上发表了自己的看法:

@antoriv:

在这次的调查报告中,我最感兴趣的是百分比,即(曾经运用过、将再次运用)/(曾经运用过、再次运用+之前运用过、不再运用)。

2016年:

React - 91%的满意度

Vue - 91%的满意度

Angular 2 - 65%的满意度

No framework - 65%的满意度

Ember - 50%的满意度

Angular - 40%的满意度

Backbone - 31%的满意度

2017年:

React - 93%的满意度

Vue - 91%的满意度

Angular 2 - 66%的满意度

No framework - 65%的满意度

Aurelia - 56% 的满意度

Polymer - 53% 的满意度

Ember - 41% 的满意度

Angular - 33% 的满意度

Backbone - 23% 的满意度

其间,特别有趣的是,许多结构的满意度比“没有结构”的高。当然这主要归因于许多没有运用结构的开发者。曾遇到过一些以为前端结构是无稽之谈的开发者(通常是后端开发人员),他们更喜欢只写一堆 jQuery。别的,如果您在 Wordpress 网站上工作,那么结构往往是没有必要的。

更多干货尽在:天码程序

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180103A0SLJQ00?refer=cp_1026

同媒体快讯

相关快讯

扫码关注云+社区