平常寫(xiě)代碼雜亂無(wú)章的珠叔,自己看上去沒(méi)太大影響废赞,但是當(dāng)別人來(lái)讀你的代碼的時(shí)候就苦不堪言湾戳,自己再去整理的時(shí)候很多問(wèn)題也難以發(fā)現(xiàn)闷板,代碼過(guò)程中也是東一塊西一塊像是拼接成似的,所以這個(gè)時(shí)候規(guī)范化的代碼就顯得格外重要院塞,小編在實(shí)驗(yàn)室的練習(xí)過(guò)程中就發(fā)現(xiàn),與學(xué)校合作的公司項(xiàng)目要求都是在項(xiàng)目命名格外注重的性昭。
- 項(xiàng)目名——首字母大寫(xiě)拦止、其余單詞小寫(xiě),多單詞組合則用下劃線分割
- 包名、模塊名——全用小寫(xiě)字母
- 類名——首字母大寫(xiě)汹族、其他字母小寫(xiě)萧求,多單詞采用駝峰
- 方法——小寫(xiě)單詞
- 函數(shù)——若函數(shù)的參數(shù)名與保留關(guān)鍵字沖突,則在參數(shù)后加一個(gè)下劃線顶瞒,比拼音好太多
- 全局變量——采用全大寫(xiě)夸政,多單詞用下劃線分割
注意:
1.不論是類成員變量還是全局變量,均不使用 m 或 g 前綴榴徐。
2.私有類成員使用單一下劃線前綴標(biāo)識(shí)守问,多定義公開(kāi)成員,少定義私有成員坑资。
3.變量名不應(yīng)帶有類型信息耗帕,因?yàn)镻ython是動(dòng)態(tài)類型語(yǔ)言。如 iValue袱贮、names_list仿便、dict_obj 等都是不好的命名。
4.開(kāi)頭攒巍,結(jié)尾嗽仪,一般為python的自有變量,不要以這種方式命名
5.以__開(kāi)頭(2個(gè)下劃線)柒莉,是私有實(shí)例變量(外部不嫩直接訪問(wèn))闻坚,依照情況進(jìn)行命名
縮寫(xiě)
命名應(yīng)當(dāng)盡量使用全拼寫(xiě)的單詞,縮寫(xiě)的情況有如下兩種:
- 常用的縮寫(xiě)常柄,如XML鲤氢、ID等,在命名時(shí)也應(yīng)只大寫(xiě)首字母西潘,如XmlParser卷玉。
- 命名中含有長(zhǎng)單詞,對(duì)某個(gè)單詞進(jìn)行縮寫(xiě)喷市。這時(shí)應(yīng)使用約定成俗的縮寫(xiě)方式相种。
例如:
function 縮寫(xiě)為 fn
text 縮寫(xiě)為 txt
object 縮寫(xiě)為 obj
count 縮寫(xiě)為 cnt
number 縮寫(xiě)為 num,等品姓。
前導(dǎo)后綴下劃線
一個(gè)前導(dǎo)下劃線:表示非公有寝并。
一個(gè)后綴下劃線:避免關(guān)鍵字沖突。
兩個(gè)前導(dǎo)下劃線:當(dāng)命名一個(gè)類屬性引起名稱沖突時(shí)使用腹备。
兩個(gè)前導(dǎo)和后綴下劃線:(有特殊用圖)的對(duì)象或者屬性衬潦,例如init或者file。絕對(duì)不要?jiǎng)?chuàng)造這樣的名字植酥,而只是使用它們镀岛。
注意——關(guān)于下劃線的使用存在一些爭(zhēng)議弦牡。
命名注意:
不要使用小寫(xiě)字母'l'(el),大寫(xiě)字母'O'(oh),或者小寫(xiě)'i'作為單獨(dú)變量名稱。因?yàn)橐恍┳煮w中漂羊,上訴字母和數(shù)字很難區(qū)分(比如:O和0驾锰,l和1)。