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 网站上工作,那么结构往往是没有必要的。

更多干货尽在:天码程序

本文来自企鹅号 - 天弘媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏后台全栈之路

菜鸟的 GIS 基本概念学习

因为一些缘故,工作中了解了一下 GIS。本文算是菜鸟的学习笔记吧,如有错误,衷心希望专业的 GIS 同学指正~

55010
来自专栏数据小魔方

半圆型饼图制作技巧!!!

今天跟大家分享半圆型饼图的制作技巧! ▽ 我们看惯了普通的圆形饼图,是不是总有一种审美疲劳的感觉。毕竟总是对着同一样的版式看,难免会腻味。今天教大家怎么制作半圆...

34310
来自专栏无原型不设计

网页设计排版中哪些元素最重要?

有一些网页设计新手会认为,在设计网页的时候最重要的应该是如何添加一些具有吸引力的内容,所以他们只把大量的精力放在内容的设计上。在我看来,内容质量的好坏确实是能...

3184
来自专栏Coding迪斯尼

java开发系统内核:放大招!为系统开发星球大战游戏程序

1525
来自专栏SAP最佳业务实践

SAP最佳业务实践:SD–带质量管理的销售退货(237)-2流程说明

一、用途 本业务情景通过质量管理检验批介绍了销售订单退货处理。该流程从参考货物的原始开票凭证,创建退货销售订单开始。打印退回物料授权 (RMA) 凭证并转发给客...

3517
来自专栏葡萄城控件技术团队

SpreadJS 类Excel表格控件 - V12 新特性详解

我们很高兴的宣布:纯前端类Excel表格控件 - SpreadJS 正式推出了 V12 新版本,此次的新版本中包含了诸多重量级的功能和来自客户的新需求,如对形状...

962
来自专栏葡萄城控件技术团队

基于Html5的Canvas实现的Clocks (钟表)

Canvas是Html5中非常重要的Feature 之一,究竟Canvas的未来会怎么样? 各大巨头有着不同的想法,微软的IE9会全面支持Canvas, Saf...

1896
来自专栏极乐技术社区

『Demo』你想开发的页面特效第二期~

这期极乐大叔继续将小程序内各种页面效果实现方法聚合了一下,以便大家能够迅速而方便的使用。 图表类(折线图,统计图) 图表类:折线图,柱状图,K线,分时图 生成二...

2909
来自专栏企鹅号快讯

Web前端:看完这些终于知道为什么HTML5开启了一个时代

各大公司的支持 ? ? HTML5的优势 1、HTML5移动优先 随着高端手机(Andriod、Iphone、Ipod、winphone)的盛行,移动互联应用开...

2276
来自专栏MixLab科技+设计实验室

小程序快速实现瀑布流布局

今天插播一则微信小程序的tips 小程序image组件里有一个高度自适应的mode: widthFix: 宽度不变,高度自动变化,保持原图宽高比不变。 配合co...

3716

扫码关注云+社区