第2章 有意义的命名
2.1 介绍
2.2 名副其实
变量名太随意,haha、list1、ok 这些都没啥意义
2.3 避免误导
包含List等关键字、字母o与数字0等
2.4 做有意义的区分
反面教材,变量名:a1、a2、a3
避免冗余,不要出现Variable、表字段中避免出现table、字符串避免出现nameString - 直接name就好
2.5 使用读得出来的名称
不要使用自己拼凑出来的单词,所谓的驼峰命名法,尽量使用完整的单词
2.6 使用可搜索的名称
一些常量,最好不直接使用数字,而指定一个变量名,这个变量名可以便于搜索到
2.7 避免使用编码
2.7.1 匈牙利语标记法
避免像这样使用缩写
2.7.2 成员前缀
避免使用前缀,但是Android中一个比较好的喜欢用m表示私有等,个人感觉比较好
2.7.3 接口和实现
作者不喜欢把接口使用I来开头,实现也希望只是在后面添加imp
2.8 避免思维映射
仅仅使用简单的a、b、c等缩略一些单词
2.9 类名
类名与对象名应该是名词与名词短语,不能使动词。
2.10 方法名
方法名应当是动词或者动词短语
2.11 别扮可爱
有的变量名叫haha、banana
2.12 每个概念对应一个词
项目中同时出现Control与Manager,为什么不统一使用其中一种?
2.13 别用双关语
有时可能使用add并不合适,比例insert、append。add表示完整的新添加的含义。
2.14 使用解决方案领域名称
看代码的都是程序员,所以起名字的时候可以多考虑专业词汇。
2.15 使用源自所涉问题领域的名称
2.16 添加有意义的语境
可以把相关的变量放到一个类中,使用这个类来表明语境。
2.17 不要添加没用的语境
名字中带有项目的缩写,这样完全没有必要
2.18 最后的话
取好名字最难的地方在于需要良好的描述技巧和共有文化背景。