前言

JavaScript(后面统称JS)在过去五年得到飞速地增长,早期JS实现类似微博的“点赞”这样的功能都需要刷新一次页面。

后来开发者通过JS来制作SPA(单页面应用程序),在浏览器加载一次,后续视图都是通过JS动态生成的。webpack技术出现,解决了SPA页面加载过慢的问题,提升了性能与用户体验(但我觉得是因为4G和1M+宽带的普及)。

尽管JS最初是一门弱类型浏览器语言,但现在,在互联网各个领域都大展身手;毫无疑问JS已经成为一门一流的编程语言。

最近我看到斯坦福大学做的一份JS现状调查报告,调查覆盖了2万多名开发者(包括中国);这份报告向我们展示了许多信息,从流行趋势到薪资情况;话不多说,让我们看一下这份报告的细节。

前端框架部分

最受欢迎的前端框架React

React已经连续三年蝉联最受欢迎前端框架,十分受中小企业欢迎(react是要license的,很多大公司已经弃用这个框架,2018年2月份改为MIT)。

如图所示,紫色部分越多,就说明该框架就越受欢迎。

Angularjs现状

React的火热并不意味着我们可以忽略掉Angular,虽然它没有React的活力,但是却有强大的基因。

首先,它是由google团队运维的,并且同时也得到了他们得支持。Angular拥有庞大得用户群,例如openstack(Angular1)。

上图可以看出,Angular1要比Angular2更受欢迎。

实际上Angular更聚焦于企业市场,Angular2与TypeScript的结合就可以看出端倪。

不能忽视的Vuejs

国人维护开源的前端框架,短时间内就成为React的最大威胁;

实际Vuejs击败React的可能性并不大,但是Vuejs可以给我们带来更好的用户体验(毕竟有完整的中文doc)。

一些库可以让你获得更高的薪资

通过下面图表,你可以获悉,熟知哪些库可以给你带来更高的工资。

事实证明,与高工资关联的通常是一种特殊的技术,例如Reason,ClojureScript(这两个都没听说过)

这两张图表不太适用于国内市场,更高级的开发人员更倾向于尝试更多样化的库,而初级开发人员比较专注于一两种主流技术。

GraphQL一种用于API查询的语言

GraphQL一种用于API查询的语言,它对你的API数据提供了一套易于理解的完整描述,使得客户端能够准时地获得它需要的数据,而且没有任何冗余。

虽然目前使用者较少,但是我相信GraphQL是最令人感兴趣的技术之一。

JavaScript !== 前端

JS因浏览器前端而知名,但是不等于它只能做前端的相关项目;经过这么多年的迭代,Nodejs已经是流行的后端选择。

而在物联网设备中,JS也越来越趋向于主流,以后你家的电视能够运行JS代码也不要感到奇怪。

今年大受欢迎的VS code文本编辑器,也是有JS编写的,并且使用Electron做载体,在桌面运行。

世界各地JSer

当我们谈到JS,我们经常把它看作一个单一的,统一的生态系统,实际,在世界各地都有各自的主流趋势。

Vuejs在中国特别受欢迎,Angular在印度比较受欢迎,这也很合理,Angular本身就适合企业级的大项目,印度又是以技术外包而闻名。

强类型JS崛起

TypeScript,GraphQL,Reason都有共同的特点,他们都依赖于类型。

虽然JS开发人员长期以来享受着随心所欲地编写代码,这种自由是一把双刃剑:不可靠,容易出错。

近些年,这种情况得到了改善,TypeScript的出现,并且被大量地使用,这并不是巧合,而是一种进化。

总结

这项报告调查再一次显示了JS生态系统的丰富程度。

似乎经过了多年的争论和忽视 JS之后,开发者们终于找到了第三种选择:改进它。

JS基本上是能满足你任何想要实现的需求,它为语言变体和适应性敞开大门,而且这种趋势几乎没有停止的迹象。

这也许就是为什么大多数开发者都认为,尽管存在缺陷, JS语言仍然朝着正确的方向发展:

2018年JavaScript现状报告的更多相关文章

  1. JavaScript 现状:方言篇

    导读 JavaScript 和其他编程语言有一个很大的不同,它不像单纯的一个语言,而像一个由众多方言组成大家族.从 2009 年 CoffeeScript 出现开始,近几年出现了大量基于 JavaSc ...

  2. Packt发布了2018年技能提升报告

    2018年技能提升报告Skill Up 2018 - Developer Skills Report | PACKT Bookshttps://www.packtpub.com/skill-up-20 ...

  3. [转帖]2018年JVM生态系统报告出炉

    很多未解之谜终于有答案了——2018年JVM生态系统报告出炉 https://blog.csdn.net/hollis_chuang/article/details/84134298   2018年1 ...

  4. 43%非常看好TypeScript…解读“2022前端开发者现状报告”

    摘要:近日,The Software House 发布了"2022前端开发者现状报告",笔者在此对报告内容进行解读,供大家参考. 本文分享自华为云社区<"2022前 ...

  5. NOIP 2018 普及组 解题报告

    目录 标题统计 题目链接 思路 代码 龙虎斗 题目链接: 思路 代码 摆渡车 题目链接: 思路 对称二叉树 题目链接 思路: 先来解释一下为毛现在才来发解题报告: 其实博主是参加过NOIP 2018普 ...

  6. 全年DDoS攻击分析|知道创宇云安全2018年度网络安全态势报告

    *本报告由知道创宇云安全出品* 数据来源:知道创宇云防御平台 前言 2018年,网络安全领域暗流涌动,攻击趋势不断攀升,T级DDoS攻击多次爆发.数据泄露事件层出不穷.勒索软件大行其道.此外,随着我国 ...

  7. 「九省联考 2018」IIIDX 解题报告

    「九省联考 2018」IIIDX 这什么鬼题,送的55分要拿稳,实测有60? 考虑把数值从大到小摆好,每个位置\(i\)维护一个\(f_i\),表示\(i\)左边比它大的(包括自己)还有几个数可以选 ...

  8. 2018上半年DDoS攻击报告:流量峰值达1.7Tbps

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 2018年上半年DDoS攻防仍如火如荼发展,以IoT设备为反射点的SSDP反射放大尚未平息,Memcached DDoS又异军突起,以最高可 ...

  9. 2018 .NET开发者调查报告: .NET Core 是怎么样的状态

    4月28日,在公众号里发起<.NET Core 使用调查>,该调查为期一周,有近3300名开发者参与. 已经使用.net core  的人数只有44%,计划使用.net core 比例达到 ...

随机推荐

  1. WPF控件库:文字按钮的封装

    需求:封装按钮,按钮上面只显示文字.在鼠标移上去.鼠标点击按钮.以及将按钮设为不可用时按钮的背景色和前景色需要发生变化 实现:继承Button类,封装如下6个属性: #region 依赖属性 /// ...

  2. SQL学习总结-思维导图

  3. (python)数据结构------列表

    一.数字的处理函数 (一)int() 取整数部分,与正负号无关,举例如下: print(int(-3.6), int(-2.5), int(-1.4)) print(int(3.6), int(2.5 ...

  4. python 数据驱动ddt使用,需要调用下面的代码,请挨个方法调试,把不用的注释掉

    #!/usr/bin/env/python # -*- coding: utf-8 -*- # @Time : 2018/12/15 15:27 # @Author : ChenAdong # @Em ...

  5. ORACLE实际执行计划与预估执行计划不一致性能优化案例

      在一台ORACLE服务器上做巡检时,使用下面SQL找出DISK_READ最高的TOP SQL分析时,分析过程中,有一条SQL语句的一些反常现象,让人觉得很奇怪: SELECT SQL_ID,    ...

  6. 将 varchar 值 'ACCE5057EC423F7C' 转换成数据类型 int 时失败

    调试别人的存储过程,然后报错了 将 varchar 值 'ACCE5057EC423F7C' 转换成数据类型 int 时失败 这让我一通找.找了一个多小时. 通过这个错可以知道,错误肯定是在联表 字段 ...

  7. Python 输出格式符号

    Python 常见的输出格式符号

  8. UICollectionView 基础

    在iOS开发中经常会用到UICollectionView,和UITableView同样即成UIScrollView 但是操作起来比UITableVIew要麻烦一些 ,有些地方需要注意,一下是UICol ...

  9. php快速定位当前调用的类的位置

    php快速定位当前调用的类的位置 $func = new ReflectionMethod('类名', '方法名'); $start = $func->getStartLine() - 1; $ ...

  10. [转载]深入理解JavaScript系列 --汤姆大叔

    深入理解JavaScript系列文章,包括了原创,翻译,转载,整理等各类型文章,如果对你有用,请推荐支持一把,给大叔写作的动力. 深入理解JavaScript系列(1):编写高质量JavaScript ...