2.2 名副其实
- 在代码中体现上下文的语境,能够知道这段代码想干什么;
2.3 避免误导
- 避免留下隐藏代码本意的线索;
- 提防使用不同之处较小的名称;
- 以同样的方式书写同样的概念才是信息;
2.4 做有意义的区分
- 在变量后面添加数字来做区分和说废话没有任何区别;
- 废话永远都是冗余,Variable一词永远不应当出现在变量中,而Table一词永远不要出现表名中;
- 要区别名称,就要以读者能鉴别不同之处的方式来做区分;
2.5 使用读得出来的名称
2.6 使用搜索得出来的名称
- 单字母名称仅用于短方法中的本地变量。
- 名称长短应与其作用域大小相对应。
- 若变量或常量可能在代码多处使用,则应赋其以便于搜索得名称。
2.7 避免使用编码
- 将类型和作用域带进名称里面,增加了解码的负担;
- 匈牙利标记法,成员前缀或后缀,接口和实现;
2.8 避免思维映射
- 不应让读者把你的名称翻译为他们脑中熟知的名称;
- 专业程序员了解,明确才是王道;
2.9 类名
说明:类名和对象名应该是名词或者名词短语,避免使用Manager、Data、Info这样的名称,不使用动词。
2.10 方法名
说明:方法名使用动词或动词短语,重载构造器时,使用带参数的静态工厂方法名。
2.11 别扮可爱
2.12 每个概念对应一个词
说明:给每个抽象概念选一个词,并一以贯之,明确对概念的一致认识有助于迅速找到正确的名称。
2.13 避免使用双关语
- 避免将同一单词用于不同目的;
- 代码作者应尽量写出易于理解的单词
2.14 使用解决方案领域名称
说明:多使用专业的术语,因为毕竟只有程序员才会看你的代码,给某些事取一个技术性的名字,是最靠谱的做法。
2.15 使用源自问题领域的名称
说明:优秀的程序员和设计师,其工作之一就是分离解决方案领域和问题领域的问题。
2.16 添加有意义的语境
- 你需要有良好的类、函数或名称空间来放置名称,为读者提供上下文的语法;
- 算法能够通过分解为更小的函数使语境增强,从而显得干净利落;
2.17 不要添加没有必要的语境
说明:只要短名称足够清楚,就要比长名称好,别给名称添加不必要的语境。
2.18 最后的话
说明:取好名字最难的地方在于需要良好的描述技巧和工友的文化背景。