《代码整洁之道》读后感
有意义的命名
- 命名有意义,避免使用process, manager这种可有可无的,不够具象化的命名,当然,更不能有误导性的名称
- 区分度要高,同样,一些data,info这种区分度较差,同时,更利于搜索
- 在强类型语言中,避免通过名称来表示类型
- less is more: 如果两个名称表达的意思一样,那么选择更短的
- 类:名词或名词短语;函数:动词或者动词短语
- 保证命名的一致性,对含义接近的词保证一致性,或者统一用其中一个。
- 命名尽量能够贴近业务领域的专有名称
- 提供语境,通过类的方式更好,或者名称加前缀,不可滥用。
函数
- 函数应当简短,语义明确,只做一件事
- 避免多层嵌套,不要超过2层
- 只做一件事:一件事的定义为:在函数名称的抽象层级下完成一件事,函数中为这一件事情的步骤。函数中的所有语句都要位于同一抽象层级下面。
- 函数代码位置,自顶向下的层级
- 函数参数:越少越好
- 尽可能遵循一元函数的两种普遍形式
- 函数参数中的标识参数,慎用,容易违反只做一件事情
- 抽离try_catch,专注只做一件事情
注释
- 糟糕代码不能用注释掩埋,重构代码
- 好的注释:法律信息,提供信息,意图解释,警示,todo,放大重要性
- 坏的注释:废话(没有信息量)
- 能用代码说明的事情,别用注释
格式
团队一致的风格
语言本身的风格