JavaScript开发人员调查现在已经结束,一如既往社区对结果进行了进一步分析:

51%的被参与者写客户端代码,而28%的人说他们编写服务器端代码。去年客户端的占比是98%,所以我猜想,DailyJS起到了一定的积极作用,但有趣的是服务器端开发怎么发展的如此迅猛。

当被问到在哪里写javascript时,54%的人回答“工作”,45%的人回答“项目”。这可能一个人同时回答两种情况——我发现这对程序员是通用的,无论是专业人士还是业余爱好者。

大多数的参与者编写JavaScript已经有三到五年(34%)。我不禁觉得这得益于Node的增长——人们在经历使用其他的语言进行后台开发后,重新发现JavaScript的魅力,或者得益于前端框架的成长,如AngularJS和Backbone.js。我无法想象设计人员不具备JavaScript技巧。

78%的参与者说他们没有使用可以编译成JavaScript的语言(类似coffeescript)。我已经注意到Node社区的一些颇具影响力的成员对这些语言的声音,所以似乎看起来参与者同意。我在博客中尽量保持关于这些语言的一些报道,但总的来说重点是JavaScript。与其他语言不同,使用tab可以节省一点点尺寸,所以我不太介意使用哪种方法。

CoffeeScript 是最流行的“编译(conpile-to)”语言(64%),TypeScript从去年开始初见端倪(19%)。

代码的样式问题很混乱,结尾的分号,逗号和方法保留一个空格是最受欢迎的选择。有趣的是9%的人使用tab而11%的人使用空格。客户端开发者好像偏爱于四个空格,然而仅有8%的人选择此项。

测试的结果太好笑了:

  • 是:25%
  • 否:26%
  • 有时(Sometimes)/不总是(not enough)/不太多

我喜欢你的诚实,“不总是”可能只是谦虚,所以我意识到“很多参与者仅写些例子,但他们觉得自己可以做的更好”。

Jasmine非常流行,大约占30%。我始终认为tap是最好的方法,但它只占2%。Mocha表现很好,占到27%,QUnit下降到16%。我认为这很能证明参加调查的很大一部分是Node开发者,但也可能是人们看到Mocha作为一个浏览器/Node模块的魅力,而且QUnit很多时候仅配合jQuery使用(这不一定是真的)。

CI服务?36%的人回答是。Node绝对是CI服务的好基友——我最近开始用TeamCity的服务器做objective - c项目并且这是令人吃惊的困难。和搭配Travis CI的开源Node项目比起来,这简直让人可笑。然而,Jenkins是最流行的CI服务(44%),TeamCity斩获(13%),所以也许人们发现跟踪客户端或Node检测很容易,在使用多种语言现有企业CI服务的帮助下。

原来人们喜欢AMD!然而如果我们把CommonJS的结果分开来看,我们发现17%的人使用CommonJS而12%的人使用Browserify。很长一段时间我提倡CommonJS,但Browserify的理论很有说服力……

当看到AngularJS和Backbone.js在客户端框架中各占25%时,我很吃惊,他们有各自的内涵,但我不自觉的认为他们用来解决不同的问题。

一般常识认为支持IE似乎应该从IE 8开始(37%)。我猜那是公司的支持要求,这是已经存在十年之久的web开发人员心中的阵痛。

你使用ES6的特性吗?85%的人回答“不”,所以不过你没有使用,其实你一点也不糟糕。我可能仅仅写DailyJS文章的时候会用到,但我们将会在明年看到这种情况开始增长。

PHP是最受欢迎的主要开发语言(24%),c#有17%。你好.NET成员!

感谢大家参加调查!如果你可以用这些数据做一些很酷的事,我很想听听。

译者注

本文为翻译文章,原文为“JavaScript Developer Survey 2013: Results

 支持我继续翻译吧。

更多文章请访问的我的博客

 关注我的微博吧

2013年JavaScript开发人员调查结果的更多相关文章

  1. JavaScript开发人员必知的10个关键习惯

    还在一味没有目的的编写JavaScript代码吗?那么你就OUT了!让我们一起来看看小编为大家搜罗的JavaScript开发人员应该具备的十大关键习惯吧! 随着新技术的不断发展,JavaScript已 ...

  2. 每个JavaScript开发人员应该知道的33个概念

    每个JavaScript开发人员应该知道的33个概念 介绍 创建此存储库的目的是帮助开发人员在JavaScript中掌握他们的概念.这不是一项要求,而是未来研究的指南.它基于Stephen Curti ...

  3. JavaScript 开发人员需要知道的简写技巧

    本文来源于多年的 JavaScript 编码技术经验,适合所有正在使用 JavaScript 编程的开发人员阅读. 本文的目的在于帮助大家更加熟练的运用 JavaScript 语言来进行开发工作. 文 ...

  4. 作为JavaScript开发人员,这些必备的VS Code插件你都用过吗?

    本文翻译自:https://www.sitepoint.com/vs-code-extensions-javascript-developers/ 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的 ...

  5. 初中级Web开发人员的福音:《JavaScript启示录》上市了

    经历过14个月的等待,本书终于上市了,完全口语化叙述,请参考右边的链接. 本书介绍 本书无关于JavaScript设计模式,也无关于JavaScript面向对象代码实现.本书的写作目的也不是鉴别Jav ...

  6. MongoDB成为最受开发人员期待的数据库系统

    本文翻译之MongoDB官方博客,原文地址:https://www.mongodb.com/blog/post/stack-overflow-research-developers-mongodb-m ...

  7. SharePoint Server 2013开发之旅(二):使用在线的开发人员网站进行SharePoint App开发

    上一篇我已经介绍了新版本的SharePoint Server提供了四种主要的开发场景,其中一个全新的App开发模型让我们眼前一亮.这一篇我将介绍如何在线进行SharePoint App开发. 谈到Sh ...

  8. 对于JavaScript的函数.NET开发人员应该知道的11件事

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 昨天小感冒今天重感冒,也不能长篇大论.如果你是.NET开发人员,在进入前端开发领域的时候,对 ...

  9. IE8"开发人员工具"使用详解下(浏览器模式、文本模式、JavaScript调试、探查器)

    来源: http://www.cnblogs.com/JustinYoung/archive/2009/04/03/kaifarenyuangongju2.html 在上一篇文章IE8“开发人员工具” ...

随机推荐

  1. ubuntu的PPA

    PPA,表示Personal Package Archives,也就是个人软件包集很多软件包由于各种原因吧,不能进入官方的Ubuntu软件仓库.为了方便Ubuntu用户使用,launchpad.net ...

  2. 洛谷 P4093: bzoj 4553: [HEOI2016/TJOI2016]序列

    题目传送门:洛谷P4093. 题意简述: 给定一个长度为 \(n\) 的序列 \(a\). 同时这个序列还可能发生变化,每一种变化 \((x_i,y_i)\) 对应着 \(a_{x_i}\) 可能变成 ...

  3. 聊天室(下篇)GatewayWorker 与 Laravel 的整合

    思路 上一篇大概梳理了一下 GatewayWorker 的基础知识.这篇就来准备整合 GatewayWorker 到 Laravel. GatewayWorker 是基于 Socket 监听的服务器框 ...

  4. linux sigaction 函数 用法释义

    使用 sigaction 函数: signal 函数的使用方法简单,但并不属于 POSIX 标准,在各类 UNIX 平台上的实现不尽相同,因此其用途受 到了一定的限制.而 POSIX 标准定义的信号处 ...

  5. RESTful Web 服务:教程

    RESTful Web 服务:教程   随着 REST 成为大多数 Web 和 Mobile 应用的默认选择,势必要对它的基本原理有所了解. 在它提出十多年后的今天,REST 已经成为最重要的 Web ...

  6. SQLAlchemy-对象关系教程ORM-query

    一:对象关系教程查询 一个 Query创建对象时使用 Session的query()方法 .此函数接受一个变量数量的参数,可以是任何类和class-instrumented描述符的组合. Query返 ...

  7. js权威指南---学习笔记02

    1.JS只有函数作用域,没有块级作用域这个概念: 它有一个特性——声明提前:在同一个函数中不同位置声明的变量,都被提前在函数开始的时候,执行声明操作:在原先位置执行赋值操作: 2.声明的全局变量,相当 ...

  8. less常用样式集,清除浮动、背景自适应、背景渐变、圆角、内外阴影、高度宽度计算。

    .clear-float() { content: ''; display: block; clear: both; height:; } //伪元素清除浮动 .after-clear() { &am ...

  9. SQL农历转换函数(显示中文格式,加入润月的显示)

    if object_id('fn_getlunar') is not null drop function fn_getlunar go create function dbo.fn_getlunar ...

  10. Linux同步互斥(Peterson算法,生产者消费者模型)

    同步 两个或两个以上随时间变化的量在变化过程中保持一定的相对关系. 互斥 对一组并发进程,一次只有一个进程能够访问一个给定的资源或执行一个给定的功能. 互斥技术可以用于解决诸如资源争用之类的冲突,还可 ...