搞前端开发的比后端多两倍,这意味着哪一个更有前途?

npm的作用是帮助程序员查找满足需求的JavaScript库和框架,近日,npm连发三份调查报告,总结了JavaScript生态圈近一年来大大小小的变故,本文主要针对后端框架展开。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

后端的故事很简单:Express是编写后端服务的主流解决方案,其余几个大框架相对于Express来说都太小了。

另一个清晰的模式是,Express在逐渐趋于稳定。过去,所有npm下载量的1.5%基本都是Express,现在,这个数字是0.15%的十分之一。然而,与不断下滑的Backbone和Flux相比,Express算是趋于稳定了。

本文讨论的几乎所有框架相较于几年前都是增长的,比如Express从2013年初以来已经增长了6000%。之所以这些增长看起来好像是下降了一样,是因为在同一时间内,注册npm机构的库和工具等增长了67,000%,基数变大了。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

换句话说,JavaScript正在以史上前所未有的速度增长着。

写前端的程序员是写后端的二倍,未来哪一部分会更火?

目前,大约83%的npm开发人员在编写前端JavaScript,而只有41%的程序员在为后端编写代码(这些数字之间有重叠)。前后端开发人员比例为2比1,这说明什么?调查认为,这强烈表明未来前端开发和工具应用将更有前途。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

在深入研究这个结论之前,让我们先来看看其他常用的后端框架。

其他后端框架

除了Express之外的四大后端框架是:

·Koa

·Hapi

·Sails

·Next

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

这里,Koa是Express的继承者,是用一套更紧密的设计原则对Express的重写。获得可观使用量的同时,增长速度不是很快。

Hapi

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

Hapi在2014年底经历了短暂的鼎盛时期。巧合的是,这就发生在npm社区转换自己的网站使用Hapi之后,所以有可能npm的代言是有效的。然而,自此以后,Hapi一直处于下滑状态,npm自己的网站也正在转移。

Sails

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

顾名思义,Sails就是JavaScript的Ruby on Rails的克隆。虽然最初在2012年底推出的时候非常流行,但是它遵循着常见的"半衰期"衰退模式,这表明它不再被新项目所采用。

Next.js

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

Next.js是一个相对较新的框架,并且比其他三个讨论的要少得多,它的使用模式有点混乱,所以这里跟踪了它的采用情况,Next.js显示出一些稳定增长,值得一试,尤其是因为它使用了React。

npm的前端工具使用历史

在2013年及以前,npm中前端库的使用量非常庞大,从Backbone的流行就可以看出来。但是,在Express和其他服务器端架构持续增长的同时,Backbone开始走下坡路。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

自2015年以来,npm注册管理机构的前端使用率再次增长。但是前端和后端在JavaScript之间的界限是模糊的,部分原因是Webpack和Babel这样工具的使用。

为了试图弄清楚npm的前端使用情况,我们将看看用来提供前端代码的库,包括:

·Babel

·Webpack

·Browserify

·Bower

·RequireJS

·SystemJS

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

Babel

Babel是一个转译器,用于将更现代的JavaScript版本转换为与Node.js中的服务器端JavaScript以及与浏览器兼容的JavaScript旧版本。虽然Babel非常受欢迎,但它被用于前端和后端应用程序,不是前端使用的可靠代理。

Webpack

另一方面,Webpack是专门为浏览器提供JavaScript代码的工具。它的使用率一直与React不相上下。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

不过,在2016年中,Webpack的使用率开始超过React。这表明,Web开发人员已经开始更广泛地采用Webpack,而不仅仅是React应用程序。

Browserify

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

在Webpack流行之前,Browserify开创了在浏览器中使用服务器端JavaScript的过程。 这在2015年中非常受欢迎,但2016年开始急剧下滑。

对此可能的解释可以在两个工具的设计目标中找到。Browserify将Node.js API(包括用于许多后端API的填充)包含到浏览器中。Webpack是一个更通用的模块系统和编译工具,可以加载图片,CSS和其他前端资源。因此,对于不是"Node.js Devs"的开发者来说,Webpack更为有用。

Bower

浏览器端模块化JavaScript的另一个解决方案是Bower。Bower不仅是将模块放入浏览器的另一种方式,它也是一个完全独立的非npm模块,尽管Bower客户端本身是由npm注册中心托管和安装的。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

虽然Bower的开发人员认为客户端本身具有许多优秀的特性,但他们同意CommonJS是大多数npm包所使用的JavaScript模块格式,是一种更灵活和流行的解决方案。但最终,还是开始逐渐下滑。

(有趣的是,编写Bower早期版本的AndréCruz创建了npms.io,这个开源的JavaScript模块搜索引擎被npm所采用,现在npm的官方搜索功能已经启用,André自己也是npm用户。)

RequireJS和SystemJS

RequireJS是另一种具有自己模块格式的替代装载机,在2013年初颇受欢迎,但与Bower同时开始下滑。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

2015年发布的SystemJS增长缓慢,直到2016年中期,从未真正获得过推动力。

曾经是主要力量的Bower败给了Browserify,后者丢失了Webpack的份额,Webpack偷走了SystemJS的份额。JavaScript生态系统在过去5年的变化清楚表明,很难预测5年后JavaScript将会成为什么样。React现在看起来占统治地位,但是随时都有可能被新人取代。

Webpack和Express

目前,npm前端使用的最可靠代理可能是Webpack。与Express相比,Webpack从三年前的快速增长,现在已经达到了Express受欢迎程度的一半。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

尽管在瞬息万变的JavaScript世界中做出预测是一件危险的事情,但npm社区认为Webpack将继续增长,甚至超过Express,这与目前所看到的新用户比例一致。

几年后,npm可能被认为是一个主要的前端工具,这对于JavaScript来说是个好消息。npm生态系统的所有增长,无论是前端还是后端,对于整体JavaScript都是一个好消息。

搞前端开发的比后端多两倍,这意味着哪一个更有前途?

如果简单概括,调查结果就四个字:平稳增长。众多框架和工具的强劲增长组成了一门语言的繁荣,JavaScript正在登月。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值