代码整洁之道

断断续续的在看一本书《代码整洁之道》

记录一下我认为实用的点。

有意义的命名

  • 有意义的名称。
  • 好搜索的名称,比如常量的命名。
  • 可读出来的名称。

可能会说这玩意还用说吗?这是基础的基础,一般情况下的命名我自认为做的挺好,但是看书之后我才发现我一个小毛病,就是习惯于把较长的命名给死命缩短(通常就是改变单词的缩写),感觉不缩短就难受。这样下来就有个问题。下一次再看代码的时候有时候会卡壳,忘了这个缩写是表示啥意思了。我这就是犯了上面的第三点“名称不可读”。

所以命名的前提是首先要能让人看懂,别整虚头巴脑的,一定要描述完整,当然有时候你发现你的命名需要装下好几个单词,得反过来再看看,是不是代码结构存在问题。

函数

一个函数只做一件事,每个函数一个抽象层级(向下规则)。
函数要么做什么事,要么回答什么事,二则不可兼得。

异常

  • 抽离try/catch代码块
  • 使用异常替代错误码

参数

  • 参数能少则少,至多三个,实在超出了三个用对象。
  • 尽量不使用标识参数。比如Boolean isXXX。加了标识参数通常就代表函数最少也做了两件事,是方法变得复杂了起来。
  • 应避免使用输出参数,通常情况下直接修改对象就行,不用再返回。