130

哪种JavaScript编程风格最流行? | Fundebug博客

 6 years ago
source link: https://blog.fundebug.com/2017/10/30/the-most-popular-javascript-code-style/?
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

哪种JavaScript编程风格最流行?

译者按: 关于代码风格,群众的选择应该是不错的选择。

本文采用意译,版权归原作者所有

对于 JavaScrript 编程风格,有两个最大争议:缩进使用空格还是制表符?行尾是否需要使用分号?当然,还有更多其他争议,比如:定义多行数组时,逗号应该放在什么地方?

我在想,这些争议是否浪费了我们太多时间。如果我们不去做无谓的争论,而是采用最流行的编程风格,是不是更好?于是,我分析了 100 个最受信赖的 npm 模块,并且做了一个问卷调查(一共有 1169 个参与者)。

缩进使用空格还是制表符?

01.png
  • 很显然,使用 2 个空格进行缩进是大多数,尤其对于流行的开源 npm 项目来说

行尾是否需要使用分号?

  • 绝大多数 JavaScript 开发者在行尾写分号

预设 Linter

03.png

npm 模块调研:

  • 绝大多数开源项目都不使用预设的 linter
  • 大型开源项目使用它们自定义的 linter,比如: own presets: Babel, Gulp, PostCSS, Facebook
  • Sindre Sorhus 使用xo

问卷调查:

  • 问卷调查的结果与 npm 模块的调研结果非常不一样
  • AirBnb是最流行的
  • Standard也很流行 (貌似行尾不用分号的开发者都使用Standard)

Linters

04.png

npm 模块调研:

  • 大多数 npm 开源项目的的 linter 配置非常简单:不超过 10 条规则
  • 一些项目有.eslintrc.jshintrc,但是没有将它们加入测试
  • 一些项目同时有.eslintrc.jshintrc,其中甚至有一些相互冲突的规则
  • Prettier在几个星期之前发布,但是已经被不少人使用了
  • 并且,很多人非常看好Prettier。“等待 Prettier 更加流行!”,”Prettier 的主要 BUG 修复之后我就用它”。
  • 有的开发者并不在乎这个,“代码风格真的重要吗?”

对于前两个问题,我本来以为答案是五五开。但是,我却发现情况不是这样的:绝大多数开发者缩进使用空格键,tab 键几乎没人用;很多人都在代码行尾使用分号,但是发 Titter 时他们几乎不用。

还有,npm 项目的代码风格并没有想象中那么多差异:超过一半的项目缩进使用 2 个空格并在行尾写分号,并且它们大多数并不使用工具验证代码风格。

也许,这是是因为大多数流行的 npm 项目都很老了,而我在做问卷调查时,开发者谈论的都是它们最近开发的项目。

因此,如果你在新项目中采用AirBnb风格 (2 个空格, 行尾使用分号, etc.),这是一个不错的选择,因为大多数开发者的代码风格与你一致。

关于Fundebug

Fundebug专注于JavaScript、微信小程序、微信小游戏、支付宝小程序、React Native、Node.js和Java线上应用实时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了50亿+错误事件,付费客户有阳光保险、达令家、核桃编程、荔枝FM、微脉等众多品牌企业。欢迎大家免费试用

wechat_slogan.png

您的用户遇到BUG了吗?

体验Demo 免费使用

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK