The Power of Variable Names
摘录与总结一些有用的东西。
语义前缀
语义前缀 |
含义 |
c |
数量(count,如记录、字符或者其他东西的个数) |
first |
数组中需要处理的第一个元素。first与min类似,但它是相对于当前操作而不是数组本身的 |
g |
全局变量(global variable) |
i |
数组的下标(index into an array) |
last |
数组中需要处理的最后一个元素 |
lim |
数组中需要处理的元素的上限 |
m |
类一级的变量 |
max |
数组或者其他种类的列表中绝对的最后一个元素。max反映的是数组本身,而不是针对数组的操作 |
min |
数组或者其他种类的列表中绝对的第一个元素 |
p |
指针 |
应该避免的名字
避免使用令人误解的名字或缩写
避免使用具有相似含义的名字
避免使用具有不同含义但却有相似名字的变量
避免使用发音相近的名字,如wrap和rap
避免在名字中使用数字,如果数字非常重要,请用数组
避免在名字中拼错单词
避免使用英语中常常拼错的单词
不要仅靠大小写来区分变量名,不是所有语言都是大小写敏感的
避免使用多种自然语言
避免使用标准类型、变量和子程序的名字
不要使用与变量含义完全无关的名字
避免在名字中包含容易混淆的字符
Conclusion
好的变量名是提高程序可读性的一项关键要素。对特殊种类的变量,比如循环下标和状态变量,需要加以特殊的考虑;
名字要尽可能地具体,那些太模糊或者太通用以至于能够用于多种目的的名字通常都是很不好的;
命名规则应该能够区分局部数据、类数据还是全局数据,它们还应当可以区分类型名、具名常量、枚举类型名字和变量名;
无论做哪种类型的项目,你都应该采用某种变量命名规则。你所采用的规则的种类取决于你的程序的规模,以及项目成员的人数。
尽量不要用缩写,真的要用的话,请使用项目缩写词典或者标准前缀来帮助理解缩写;
代码的阅读次数远远多于编写的次数,确保你取的名字更侧重于阅读方便而不是编写方便。