关于JavaScript, NPM官方发布了2018年的回顾以及2019年的预测

原文标题:This year in JavaScript: 2018 in review and npm’s predictions for 2019javascript

本文翻译自NPM官方发布的一份报告。原文连接点击这里java

这份报告是根据Laurie Voss (NPM的联合创始人、COO)在npm and the Future of JavaScript上的演讲整理的。没有任何数据数据是完美的。若是你有任何的疑问,你能够阅读这篇文章,看下咱们是怎么聚合这些数据的node

NPM拥有超过1000万用户,每月下载超过300亿个包。每周二是NPM访问量最大的一天。用户平均在这一天下载超过13亿JavaScript开源代码包。经过分析这些下载数据,咱们能够看到JavaScript开发人员们都在从事哪方面的工做。除此以外,咱们还和Nodejs FoundationJS Foundation 进行了合做,对16,000名开发者进行了调查,询问了他们正在从事哪方面的工做。react

经过上面两种方式,咱们发现了npm社区的内在组成以及社区的趋势。这将为你在2019年进行技术选型提供帮助。git

JavaScript是世界上最流行的程序开发语言

JavaScript如此流行对任何人来讲都不是一个新闻了。Stack Overflow 2018年的开发者调查显示,JavaScript是最流行的开发语言,其次是HTML和CSS。GitHub最近的Octoverse报告给出了全部开发语言pull requests数量的排名,JavaScript也是位列第一。 github

JavaScript开发者的总数量是很难计算的。  Slashdata’s 2018 survey 报告指出,2017年底,JavaScript开发者数量为970万,而且在高速增加。这意味着当前至少已经有1000万开发者了。npm已经有超过1000万用户了,一样在高速增加。不过一部分开发者仍然还没使用过npm,不过这部分开发者的占比很小,估计小于10%。

NPM促进了JavaScript的流行

JavaScript是惟一能够开发web应用的语言,毫无疑问,JavaScript的流行与这一点是分不开的。不过,根据伯克利大学的这篇文章来看,拥有丰富的开源库,是开发者在选择一门开发语言时,最重要的因素。 web

咱们本身的调查也支持了这个结论。开发者选择JavaScript最多见的缘由是可用库的数量。
npm拥有超过836,000个可用的开源库,是目前世界上最大的开源库集合。不过,JavaScript更多的是小型库,数量多也是情有可原的。这么巨大的开源代码量,也代表了JavaSciprt和npm的流行是相互促进的。

npm被用来构建各类应用

咱们询问了开发者,他们写的JavaScript运行在哪里。93%的人回答他们用来开发web, 70%的人表示他们在服务端使用JavaScript,例如Node.js。固然,还有其余的领域:物联网、桌面应用、端应用等等。 npm

这对于在npm官方工做、维护npm命令行工具的咱们,是一个显著的变化。npm起初是为了服务端应用而诞生的,而web开发者的需求是不同的。成为一个主要为web端服务的平台,改变了咱们的优先级,因而,咱们开发了例如package-lock.json的新功能。json

npm对web开发来讲是必须的

当npm在2014年诞生的时候,使用几十个JavaScript包是很典型的。现在,通常的web应用都会使用超过1000个模块,超过2000个模块的也很多。事实上,现代web应用中,97%的代码都来自npm。开发者只须要对剩下的3%代码负责,就能使他们的应用跑起来了。安全

这对代码复用,npm社区以及开源界来讲是巨大的成功。不须要在数千个模块中建立代码,为数百万开发人员节省了数以亿计的编码时间。

2018年,npm将专一安全

对于大多数开发者来讲,npm已经成为了开发一个网站的方式。这对于咱们来讲是责任。在咱们的调查中,77%的开发人员担忧他们使用的库的质量与安全性,52%的人认为他们所使用的库是不值得信任的。

4月份,咱们发布了Node Security Platform。现在,Node Security Platform已经集成到了npm中。每一次npm的安装都会有安全审核,告诉开发者他们是否正在安装一个不安全的模块。咱们还提供了经过自动安装模块的安全版原本轻松纠正这些漏洞的工具。总之,咱们坐了不少事,来保障安全 。

npm用户特征

咱们调查对象的基本特征在以前发布的报告中涵盖了。但有一些事实须要注意。

1.不少新人。25%的开发人员使用JavaScript不到两年,51%的人使用npm不到两年。这是社区不断壮大的反作用。

2.大部分是自学的。69%的npm用户是自学的JavaScript,22%的人是在工做中学习的。

3. 不只仅使用JavaScirpt。npm的使用者并不都是严格的JavaScript开发者 —— 30%的人还使用Java,30%还使用PHP,30%使用Python,还有其余的一些语言。

4.并不在科技公司工做。55%的npm使用者表示他们并不在一个能够被称为【科技】公司的地方工做。

同时,在某些方面,npm用户与软件开发人员并无什么不一样,这自己是颇有意思的事情。好比,npm使用者在各类规模的公司工做,与这些公司的分布比例大体相同。JavaScript并非一个'"大公司技术"或"小公司技术"。npm用户分布在各个行业,也有着不用的年龄段以及受教育程度。

每一个人都但愿少用工具

2018年的JavaScript,在某种程度上是使人诟病的。由于你须要引入不少的工具才能让代码跑起来。这和2014年的状况是相反的。2014年的时候,Node.js被认为是一个 "包含全部" 的框架。今天,绝大多数的开发者根本不会把Node.js当作一个框架。诚然,咱们全部的被调查者都但愿使用更少的工具,更少的配置就能开始开发,也但愿看到更完善的文档。那么,他们喜欢的是什么样的工具呢?

今年初,咱们深刻调查了各类JavaScript框架的流行度,报告在这里part1part2part3。咱们不会在这里复述全部的分析结果,但咱们能够一块儿来看看从过去的9个月都发生了些什么。

React的增加放缓了

React继续统治web榜。在npm的调查中,超过60%的受访者表示他们正在使用React。这个比例比年初时已经有不小增加。可是,React在2018年的增加速度较2017年已经放缓了。

Angular的下载量保持平稳

两种最主要的Angular版本结合起来,在时长份额方面基本保持不变。

Ember的流行程度反弹了

一个很是不寻常的现象,Ember的受欢迎程度原本在降低,但却迎来了强劲的反弹。到9月份,使用Ember的开发者人数已经比年初时的两倍还多。咱们将继续关注这个状况。咱们认为,Ember的反弹是React增加放缓的缘由之一。

Vue继续强劲增加

GraphQL持续高速增加

GraphQL,根据其最受欢迎的客户端库Apollo来看,正在变得愈来愈受欢迎。咱们认为它将在2019年成为新的热门技术。

编译依然由Babel领衔,不过有一个惊喜 - TypeScript

全部的React使用者来讲,Babel并不陌生,它被用来将React下一代的JavaScript转换成如今的语法标准。React占据了60%的市场份额,而65%的npm使用者正在使用Babel(Babel也在React的生态以外被使用).

使人略有意外的是,46%的受访者表示他们正在使用微软的带有类型检查的JavaScript - TypeScript. TypeScript的大量使用,也许预示着开发者书写JavaScript的方式将完全改变。咱们将在下一次的调查中,更多关注TypeScirpt的使用状况。

npm对于2019年的预测

JavaScript拥有一个巨大,多变,快速发展的生态,对其进行预测是困难的。可是咱们的数据可使咱们对2019年进行必定的预测。

  1. 你将会放弃你如今使用的工具。JavaScript的框架和工具更新很快。框架的平均流行周期是3-5年。随着人们都在维护遗留的应用程序,框架的流行程度渐渐衰退。当人们开始新的工做时,他们将使用新的框架。作好准备学习使用新的框架吧,不要死抓住你如今的工具不放。
  2. 尽管增速放缓,React在2019年仍将是最有统治地位的框架。60%的web框架时长份额是史无前例的,部分缘由是:React并非一个完整的框架,而只是其中的一部分。这使得React能够在更多场景灵活使用。2019年,更多的人会使用React来开发web应用,这将为React在教程、建议以及Bug修复上带来优点。
  3. 你须要学习GraphQL。在生产环境中使用GraphQL或许过早了,特别是在你的Api都已经完成的状况下。可是2019年,你应该有意识的接触GraphQL的概念了。当你在2019年底、2020年参与新项目时,这将是你使用GraphQL的好机会。
  4. 大家组的同事将会引入TypeScript。46%的使用率表示TypeScript不只仅是一个发烧友的工具。人们是真正体会到了类型检查提供的安全性所带来的好处。特别的,当你身处一个大组时,考虑在2019年使用TypeScript吧。

保持淡定

咱们能够十分确信的作出预测:社区将会继续高速发展,JavaScript将会拥有不少的能力。随着它的增加,咱们将记录新的趋势,并与社区分享咱们的看法。你能够订阅咱们的周报在twitter上关注咱们,以了解最新的行业动态。

相关文章
相关标签/搜索