这是我读Code Complete的笔记,仅作记录复习之用。
变量名应该尽可能的描述该变量的作用。
变量名最合适的长度应该是10~16个字符。如果检查代码的时候发现了很多更短的名字,就应该检查并确保这些名字的含义足够清晰。
较长的变量适用于很少用到的变量或者全局变量,而较短的名字适用于局部变量或者循环变量。i,j,k 仅仅被用作局部变量 =〉 当你把变量名命名为i的时候,就表明这是一个普通的循环计数器或者数组下标,在这几行代码之外他没有任何作用。如果一个变量要在循环之外适用,那么就该为它取一个比i,j,k更有意义的名字。如果使用了多个嵌套的循环,那么就该给循环变量赋予更长的名字以提高可读性。
习惯把限定词加到名字的最后,如revenueTotal,expenseMax,而不是totalRevenue,maxExpense。 特例:Num限定词的位置,numCustomers表示员工总数;customerNum表示当前员工的序号,是一个下标。
变量名中常用对仗词来提高可读性,例如:begin/end, first/lase, lock/unlock, min/max, old/new, visiable/invisiable, sourse/target, up/down
我主要使用Java,所以在这里重温一下Java的变量命名规则。
Java语言风格:
应该避免的名字:
a. 避免使用令人误解的名字或缩写,如FALSE不能是Fig and Almond Season的缩写。
b. 避免使用具有相似含义的名字,如fileNum和fileIndex。
c. 避免使用具有不同含义但却有相似名字的变量,如clientRecs和clientReps。
d. 避免使用发音相近的名字,如wrap和rap。
e. 避免在名字中使用数字,如num1,num2是糟糕的名字。
f. 避免在名字中拼错单词。
g. 避免使用常常拼错的单词,如acsend,calender等。
h. 不要仅仅依靠大小写来区分变量名。
i. 避免使用多种自然语言。
j. 不要使用与变量含义完全无关的名字。
k. 避免在名字中包含易混淆的字符,如l和1,G和6,S和5,2和Z,0和O。