java 為什么很多人不建議使用駝峰命名法,有什么弊端么?
為什么很多人不建議使用駝峰命名法,有什么弊端么?因?yàn)橐苍S作者自己不喜歡駝峰命名。有些事情已經(jīng)形成了廣泛的行業(yè)習(xí)慣。類命名使用大駝峰,方法和變量命名使用小駝峰,常量全部大寫,并使用下劃線分割單詞。但是,
為什么很多人不建議使用駝峰命名法,有什么弊端么?
因?yàn)橐苍S作者自己不喜歡駝峰命名。
有些事情已經(jīng)形成了廣泛的行業(yè)習(xí)慣。類命名使用大駝峰,方法和變量命名使用小駝峰,常量全部大寫,并使用下劃線分割單詞。
但是,整個(gè)團(tuán)隊(duì)必須保持統(tǒng)一的風(fēng)格,否則會(huì)導(dǎo)致工作效率低下。
如果你認(rèn)為它是一個(gè)靜態(tài)常數(shù)或駱駝的思維方式,你可能會(huì)認(rèn)為它是一個(gè)靜態(tài)變量,但你不想稱它為駱駝的思維方式如果你調(diào)用它,它的值可能會(huì)隨時(shí)改變,給你帶來不必要的麻煩。
如果不幸的是,你的團(tuán)隊(duì)習(xí)慣的準(zhǔn)則與你自己的習(xí)慣相矛盾,要么你有足夠的能力改變所有其他人的習(xí)慣,要么你可以快速改變你的習(xí)慣以適應(yīng)團(tuán)隊(duì)。否則,等待你的可能是一句“你這么蠢,竟然做出這樣的命名?”
我在編程時(shí)給變量命名總覺得困難,有沒有什么實(shí)用技巧?
變量命名的基本原則:請(qǐng)參閱名稱的含義。
編程時(shí),通常使用兩種變量:一種是具有特定業(yè)務(wù)含義的變量,另一種是純數(shù)據(jù)結(jié)構(gòu)或算法使用的臨時(shí)變量,如循環(huán)變量。
正文采用英語單詞,并具有相應(yīng)的含義,建議采用匈牙利語、駝峰語或帕斯卡語的case方法:
首字母應(yīng)使用variable type的縮寫,其余部分應(yīng)使用variable的英語或英語縮寫,單詞的第一個(gè)字母應(yīng)該大寫。
例如:char cstudentname[10
]第一個(gè)單詞是小寫,后面是大寫的其他單詞。
例如:char studentname[10
]每個(gè)單詞的第一個(gè)字母都大寫。
例如:char studentname[10
]可以直接使用I、J、K等
什么是駝峰命名法?
駝峰的問題是模糊性和復(fù)雜性。大小寫轉(zhuǎn)換會(huì)降低輸入的速度,比較麻煩,連續(xù)的英文字母會(huì)產(chǎn)生歧義,比較典型的如to_uu和tell。事實(shí)上,沒有一個(gè)命名法是完美的,匈牙利的命名法更是羅嗦?,F(xiàn)在,建議使用下劃線。這個(gè)命名比較長,但是很容易輸入,而且?guī)缀鯖]有歧義。以我個(gè)人的理解,在什么環(huán)境下使用哪種命名方法是最合理的。例如,如果使用Microsoft環(huán)境,則應(yīng)使用類似匈牙利語的命名方法,這與內(nèi)置系統(tǒng)一致。如果您使用Java,它是小寫下劃線。這樣,使整個(gè)程序和內(nèi)置函數(shù)命名保持一致是最合理的。
Java編程中代碼規(guī)范很重要嗎?
1. 一個(gè)好的編碼規(guī)范可以盡可能地降低上百個(gè)軟件的維護(hù)成本,并且?guī)缀鯖]有一個(gè)軟件是由最初的開發(fā)人員在其整個(gè)生命周期中維護(hù)的。一個(gè)好的編碼規(guī)范可以提高軟件的可讀性,使開發(fā)人員能夠盡快理解新的代碼。一個(gè)好的編碼規(guī)范可以使維護(hù)成本最大化第四,長期規(guī)范的編碼也可以使開發(fā)人員養(yǎng)成良好的編碼習(xí)慣,甚至鍛煉出更加嚴(yán)謹(jǐn)和尊重的思維;因此非常重要。
什么樣的代碼叫好代碼?
好的代碼,滿足兩個(gè)條件:能達(dá)到預(yù)期效果,容易理解。
代碼的不同不在于功能能否實(shí)現(xiàn),而主要在于實(shí)現(xiàn)的質(zhì)量。
有些代碼雖然實(shí)現(xiàn)了效果,但另一個(gè)程序員看不懂,無法維護(hù),也是壞代碼。
現(xiàn)在在軟件行業(yè),程序員加班是很常見的。疲勞將不可避免地影響代碼的質(zhì)量。
他們大多急于達(dá)到職能要求,完成領(lǐng)導(dǎo)安排的任務(wù),只以完成為目標(biāo)。
這種不考慮長遠(yuǎn)的工作方式在短時(shí)間內(nèi)實(shí)現(xiàn)了目標(biāo),但從長遠(yuǎn)來看是個(gè)大問題。
一旦程序員離開,新來的人需要很長時(shí)間才能接手。項(xiàng)目的可擴(kuò)展性和穩(wěn)定性沒有保證。
尤其是一些外行領(lǐng)導(dǎo)只知道如何為上級(jí)做貢獻(xiàn),不能科學(xué)安排時(shí)間。
功能需求一經(jīng)更改就立即更改,新功能即將出現(xiàn)。因此,工程設(shè)計(jì)不斷調(diào)整,整體建筑穩(wěn)定性受損。
整個(gè)行業(yè)還沒有意識(shí)到代碼質(zhì)量的重要性,也沒有對(duì)代碼的敬畏。它只著眼于現(xiàn)在而忽視了長遠(yuǎn)。
只有行業(yè)人員達(dá)到飽和,淘汰不合格的程序員和產(chǎn)品經(jīng)理,好的代碼才能形成趨勢(shì)。