前言

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. ASP.NET Core 入门教程 1、使用ASP.NET Core 构建第一个Web应用

    一.前言 1.本文主要内容 Visual Studio Code 开发环境配置 使用 ASP.NET Core 构建Web应用 ASP.NET Core Web 应用启动类说明 ASP.NET Cor ...

  2. 关于正餐智能POS6.0.1.1改版后,点击反结账进入点菜界面后无法进行加菜的FAQ

    适用版本:智能POS正餐V6.0.1.1+适用情况:点击反结账进入点菜界面后无法进行加菜.原因:为让报表统计的数据更准确解决方案:1.点击反结账,输入用户密码,进入点菜界面. 2.点击结算,进入收银台 ...

  3. Linux学习历程——Centos 7 cat命令

    一.命令介绍 我们使用man cat命令,可以看到cat命令的用途是连接文件或标准输入并打印,简单来说cat命令是用来查看纯文本文件(通常为内容较少的文件),与重定向符号配合使用,可以实现创建文件与合 ...

  4. UGUI ContentSizeFitter之Button根据Text自适应

    环境 Unity3D 5.3.6f1 练习地址:https://github.com/zhaoqingqing/UGUIDemo  布局放在Layout文件夹 文档:https://docs.unit ...

  5. Hello Flask

    Hello Flask Flask简介 Flask是一个使用Python编写的轻量级Web应用框架.基于Werkzeug WSGI工具箱和Jinja2 模板引擎.Flask使用BSD授权.Flask被 ...

  6. php判断手机是安卓系统还是ios系统

    最近项目,要判断用户的手机是安卓的还是ios的,搜了一下相关的资料,最终获得的结果.事实证明,是有效的!主要是要用到HTTP_USER_AGENT,它表示的意思是用来检查浏览页面的访问者在用什么操作系 ...

  7. JSP(一):初识JSP

    在Servlet中,我们多次用到了jsp页面,今天就来仔细聊聊JSP. 一.概念 JSP全名是Java Server Pages,可理解为Java服务端页面,是一种动态网页开发技术,其本质是一个简化的 ...

  8. (转)Spring Boot(十六):使用 Jenkins 部署 Spring Boot

    http://www.ityouknow.com/springboot/2017/11/11/spring-boot-jenkins.html enkins 是 Devops 神器,本篇文章介绍如何安 ...

  9. PHP 缓存技术(一)

    移除光盘

  10. Linux操作系统有什么吸引力,在程序员中这么受欢迎?

    Linux操作系统有什么吸引力,在程序员中这么受欢迎? 在过去的几十年里,操作系统已经取得了很大的进步.曾经由微软Windows或苹果MacOS主导的操作系统,如今已不再是常态.千禧年之后,随着人们对 ...