我最早开始重视代码的可读性还是大三在搜狐做Python研发实习生的时候。那会儿我特别嫩,写代码还是学校大作业风格,天天被leader各种批评。现在回忆起来,虽然在搜狐呆的时间特别短,但那段经历能引起我对代码可读性的重视,也算是重量级的收获了。

今天一口气读完了《编写可读性代码的艺术》,感觉非常爽。我一直认为代码的可读性绝对是第一重要的,正如《黑客与画家》所言:"代码写出来是给人看的,附带着能在机器上运行"。

顺手记录了几个重要的原则:

  1. 可读性基本定理:代码的写法应当使别人理解它所需的时间最小化。

  2. 把信息装进名字里。

  3. 清晰和精确比装可爱好。

  4. 在小的作用域内可以使用短的名字。

  5. 不会误解的名字是最好的名字。

  6. 使用一致的布局;让相似的代码看上去相似;把相关的代码行分组,形成代码块。

  7. 一致的风格比正确的风格更重要。

  8. 注释的目的是尽量帮助读者了解得和作者一样多。

  9. 不要为那些从代码本身就能快速推断的事实写注释。

  10. 注释应该有很高的信息/空间率。

  11. 把条件、循环以及其他对控制流的改变做得越“自然”越好,使读者不用停下了重读你的代码。

  12. 默认情况下都用if/else,三目运算符?:只在最简单的情况下使用。

  13. 当你对代码改动时,从全新的角度审视它,把它作为一个整体来看待。

  14. 把超长表达式拆分出易于理解的小块。

  15. 小心“智能”的小代码段,它们往往在以后会让别人读起来很困惑。

  16. 让变量对尽量少的代码行可见。

  17. 操作一个变量的地方越多,就越难确定它的当前值。

  18. 应当把代码组织得一次只做一件事情。

  19. 最好读的代码就是没有代码。


Fork me on GitHub