什么情況用大駝峰命名 為什么很多人不建議使用駝峰命名法,有什么弊端么?
為什么很多人不建議使用駝峰命名法,有什么弊端么?因?yàn)橐苍S作者自己不喜歡駝峰命名。有些事情已經(jīng)形成了廣泛的行業(yè)習(xí)慣。類(lèi)命名使用大駝峰,方法和變量命名使用小駝峰,常量全部大寫(xiě),并使用下劃線分割單詞。但是,
為什么很多人不建議使用駝峰命名法,有什么弊端么?
因?yàn)橐苍S作者自己不喜歡駝峰命名。
有些事情已經(jīng)形成了廣泛的行業(yè)習(xí)慣。類(lèi)命名使用大駝峰,方法和變量命名使用小駝峰,常量全部大寫(xiě),并使用下劃線分割單詞。
但是,整個(gè)團(tuán)隊(duì)必須保持統(tǒng)一的風(fēng)格,否則會(huì)導(dǎo)致工作效率低下。
想象一下,如果有人用一個(gè)大駝峰來(lái)命名一個(gè)變量或方法,其他人可能會(huì)錯(cuò)誤地認(rèn)為它是一個(gè)直接從類(lèi)中調(diào)用的靜態(tài)方法;
或者當(dāng)你看到一個(gè)常量全部大寫(xiě)并用下劃線分隔時(shí),你會(huì)認(rèn)為它是一個(gè)有習(xí)慣性思維的常量,但事實(shí)上你的同事把它定義為一個(gè)變量,他并沒(méi)有遵守大家的約定如果你調(diào)用它,它的值可能會(huì)隨時(shí)改變,給你帶來(lái)不必要的麻煩。
如果不幸的是,你的團(tuán)隊(duì)習(xí)慣的準(zhǔn)則與你自己的習(xí)慣相矛盾,要么你有足夠的能力改變所有其他人的習(xí)慣,要么你可以快速改變你的習(xí)慣以適應(yīng)團(tuán)隊(duì)。否則,等待你的可能是一句“你這么蠢,竟然做出這樣的命名?”
什么是駝峰命名法?
駝峰問(wèn)題具有模糊性和復(fù)雜性。大小寫(xiě)轉(zhuǎn)換會(huì)降低輸入的速度,比較麻煩,連續(xù)的英文字母會(huì)產(chǎn)生歧義,比較典型的如to_uu和tell。事實(shí)上,沒(méi)有一個(gè)命名法是完美的,匈牙利的命名法更是羅嗦?,F(xiàn)在,建議使用下劃線。這個(gè)命名比較長(zhǎng),但是很容易輸入,而且?guī)缀鯖](méi)有歧義。以我個(gè)人的理解,在什么環(huán)境下使用哪種命名方法是最合理的。例如,如果使用Microsoft環(huán)境,則應(yīng)使用類(lèi)似匈牙利語(yǔ)的命名方法,這與內(nèi)置系統(tǒng)一致。如果您使用Java,它是小寫(xiě)下劃線。這樣,使整個(gè)程序和內(nèi)置函數(shù)命名保持一致是最合理的。
我在編程時(shí)給變量命名總覺(jué)得困難,有沒(méi)有什么實(shí)用技巧?
變量命名的基本原則:請(qǐng)參閱名稱(chēng)的含義。
編程時(shí),通常使用兩種變量:一種是具有特定業(yè)務(wù)含義的變量,另一種是純數(shù)據(jù)結(jié)構(gòu)或算法使用的臨時(shí)變量,如循環(huán)變量。
正文采用英語(yǔ)單詞,并具有相應(yīng)的含義,建議采用匈牙利語(yǔ)、駝峰語(yǔ)或帕斯卡語(yǔ)的case方法:
首字母應(yīng)使用variable type的縮寫(xiě),其余部分應(yīng)使用variable的英語(yǔ)或英語(yǔ)縮寫(xiě),單詞的第一個(gè)字母應(yīng)該大寫(xiě)。
例如:char cstudentname[10
]第一個(gè)單詞是小寫(xiě),后面是大寫(xiě)的其他單詞。
例如:char studentname[10
]每個(gè)單詞的第一個(gè)字母都大寫(xiě)。
例如:char studentname[10
]可以直接使用I、J、K等
數(shù)控程序名怎么命名?
Hump method small Hump:第一個(gè)單詞是小寫(xiě),其他單詞是大寫(xiě)的,如:myfirstname常用于變量big Hump(也稱(chēng)為Pascal命名法):?jiǎn)卧~是大寫(xiě)的,如:myfirstname常用于類(lèi)名,函數(shù)名、屬性、命名…
2.
下劃線命名下劃線命名方法在Linux中很常見(jiàn),包括在一些系統(tǒng)庫(kù)和開(kāi)源軟件中。例如char my_uuname[10]…
3。
匈牙利語(yǔ)的術(shù)語(yǔ)以變量類(lèi)型的縮寫(xiě)開(kāi)始,例如int icountunsigned int
一個(gè)老程序員的感受:
寫(xiě)代碼就是把想法輸出到代碼中
讀代碼就是把代碼還原成想法
哪一個(gè)更難?