clean-code-javascript:让你的 JavaScript 代码更干净的 GitHub 指南

clean-code-javascript 在 GitHub 上收获了 94.6K Star。

这个项目是 Robert C. Martin 的经典著作《Clean Code》的 JavaScript 实践版。它把书中那些软件工程原则,翻译成了 JavaScript 开发者看得懂、用得上的具体示例。

正文顶部截图

它解决了什么问题

大多数开发者都读过烂代码。变量名随意、函数又长又臭、一个类塞了十种功能。日子久了,改一个 bug 能引出三个新 bug。

clean-code-javascript 不是一份风格指南,它是一本关于如何写出可读、可复用、可重构的 JavaScript 代码的手册。每条原则都有 bad/good 两种写法的对比,看一眼就明白该怎么做。

核心内容

项目覆盖了变量、函数、对象、类、SOLID 原则、测试、并发、错误处理、格式化和注释等主题。

变量方面,它提倡用有意义且可发音的命名,避免心理映射——说白了就是别用 lxtmp 这种名字。

函数部分强调单一职责:一个函数只做一件事。参数控制在两个以内,多用默认参数代替短路写法。它还建议用函数式编程替代命令式编程,用 reduce 代替 for 循环。

面向对象部分涵盖了 ES6 类的使用、方法链、以及优先使用组合而非继承。SOLID 原则在 JavaScript 中的实现也给出了具体例子。

README区域截图

一个典型例子

函数标记参数是一个常见问题。下面这段代码,你没跑起来之前根本不知道参数的含义:

createMenu("Foo", "Bar", "Baz", true);

改成解构传参,一眼就能看出每个参数对应什么:

function createMenu({ title, body, buttonText, cancellable }) {
  // ...
}

createMenu({
  title: "Foo",
  body: "Bar",
  buttonText: "Baz",
  cancellable: true
});

适合谁看

这个项目不是写给初学者的速成教程。它更适合已经写过一段时间 JavaScript、想提升代码质量的开发者。别指望看完它就变成高手,它只是一个参考框架,让你 review 代码时有个标准可以对照。

团队用它做 code review 的 check list 也挺合适。新成员入职时,把这份指南过一遍,至少能保证全队的代码风格在一个频道上。

最后

项目覆盖了 40 多条实践原则,每一条都有代码对比。不需要一次性全部遵守——有些原则本身就有争议。但它是经过多年集体经验沉淀下来的东西,值得时不时翻一翻。

都有代码对比。不需要一次性全部遵守——有些原则本身就有争议。但它是经过多年集体经验沉淀下来的东西,值得时不时翻一翻。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐