The Art of Readable Code

The art of readable code

第1章 代码应当易于理解

  • 代码应当易于理解
  • 代码的写法应当使别人理解它所需的时间最小化。

第2章 把信息装到名字里

  • 选择专业的词。
    get.fetch.download.stop.kill.pause.resume

  • 避免泛泛的名字(或者说要知道什么时候使用它)。
    要勇于使用同义词典或者问朋友更好的名字建议。英语是一门丰富的语言,有很多词可以选择。
    下面是一些例子,这些单词更有表现力,可能适合你的语境:
    send -> deliver, dispatch, announce, distribute, route
    find -> search, extract, locate, recover
    start-> launch, create, begin, open
    make -> create, set up, build, generate, compose, add, new

  • 清晰和精确比装可爱好

  • 避免像tmp和retval这样泛泛的名字
  • tmp这个名字只应用于短期存在且临时性为其主要存在因素的变量
    很多时候,仅仅因为懒惰而滥用它们。这可以理解,如果想不出更好的名字,那么用个 没有意义的名字,像f o o,然后继续做别的事,这很容易。但如果你养成习惯多花几秒 钟想出个好名字,你会发现你的“命名能力”很快提升。

  • 用具体的名字代替抽象的名字。
    ServerCanStart() -> CanListenOnPort()

  • 使用前缀或后缀来给名字附带更多信息。
  • 决定名字的长度。
  • 利用名字的格式来表达含义。