婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > 每個(gè)程序員需掌握的20個(gè)代碼命名小貼士

每個(gè)程序員需掌握的20個(gè)代碼命名小貼士

熱門(mén)標(biāo)簽:地圖標(biāo)注植物名稱(chēng) 去哪里辦卡 鄭州中國(guó)移動(dòng)400電話申請(qǐng) 地圖標(biāo)注審核工作怎么樣注冊(cè) 無(wú)錫電銷(xiāo)機(jī)器人銷(xiāo)售 招聘信息 熱血傳奇沃瑪森林地圖標(biāo)注 揭陽(yáng)外呼系統(tǒng)公司 南召400電話辦理資費(fèi) 福建ai電銷(xiāo)機(jī)器人加盟公司

代碼中到處都需要命名。作為程序員,我們得給類(lèi)命名,給變量命名,給函數(shù)命名,給參數(shù)命名,給命名空間命名,等等等等。下面有20條小貼士能幫助你提高你的命名能力。

1.使用能夠表達(dá)意圖的名字

名字得能告訴我們它要做什么,為什么存在,以及是如何工作的。選擇能夠表達(dá)意圖的名字,將更有利于我們理解代碼。

int d; // elapsed time in days

int elapsedTimeInDays;
int daysSinceCreation;
int daysSinceModification;
int fileAgeInDays;

在上面的片段中,我們只能從注釋中知道變量d指的是什么。于是閱讀代碼的人為了知道它的含義就不得不去尋找它的實(shí)例以獲取線索。所以,要是我們能夠好好命名這個(gè)變量,閱讀代碼的人就能夠瞬間知道這變量的含義。

2.不要怕在選擇名字上花時(shí)間
你應(yīng)該多試幾種不同的名字,直至足以描述其含義,千萬(wàn)不要害怕在這上面花時(shí)間。以后閱讀你代碼的人(包括你自己)將會(huì)因此而受益。此外,一個(gè)描述性的名稱(chēng)甚至還能有助于你在心中理清模塊的設(shè)計(jì)。良好的命名的確需要花費(fèi)時(shí)間,但是從長(zhǎng)遠(yuǎn)來(lái)看,利大于弊。

3.重構(gòu)名字
如果你在后面的開(kāi)發(fā)過(guò)程中想到了一個(gè)更好的名字,那就不要猶豫,馬上去改吧。現(xiàn)在的IDE使得重構(gòu)名字變得異常容易。

4.避免在名字中出現(xiàn)干擾詞
比如Manager、Processor、Data、Info以及“我不知道這叫什么”的同義詞,都是干擾詞。如果你需要使用上面這些干擾詞的話,那么說(shuō)明你的命名可能太累贅了。

5.小心難以命名的類(lèi)/功能
一個(gè)很難命名的類(lèi)或函數(shù)很有可能是一個(gè)代碼異味。這說(shuō)明:

代碼做得太多。
代碼做得還不夠。
你對(duì)此問(wèn)題理解得還不夠透徹,需要先獲取更多的信息。
6.類(lèi)名
類(lèi)應(yīng)該有個(gè)名詞或名詞詞組的名字,如Customer、WikiPage、Account和AddressParser。繼承性父類(lèi)應(yīng)該給個(gè)又短又有沖擊力的名字。子類(lèi)的名字應(yīng)該長(zhǎng)點(diǎn),通過(guò)形容詞來(lái)描述其不同于它的父類(lèi)之處,如SavingsAccount衍生于Account。

7.變量名
變量名也應(yīng)該是名詞。它們大多是由其指向的類(lèi)衍生出去的。布爾變量應(yīng)寫(xiě)成謂詞的形式,如isEmpty和isTerminated,這樣放到if語(yǔ)句才便于理解。

8.方法名
方法名應(yīng)該是一個(gè)動(dòng)詞或動(dòng)詞詞組,如postPayment()、deletePage()和save()。訪問(wèn)器和調(diào)整器應(yīng)該分別前綴get和set。返回布爾值的方法應(yīng)該前綴‘is',如isPostable(),這樣在if語(yǔ)句中才便于理解。

9.范圍大小與變量名的長(zhǎng)度
變量名的長(zhǎng)度應(yīng)和它的范圍大小相匹配。如果變量的范圍很短,那么變量名的長(zhǎng)度也應(yīng)該很短。反之,變量名則應(yīng)該長(zhǎng)一點(diǎn),更有描述性。

10.范圍大小與方法/類(lèi)名的長(zhǎng)度
對(duì)于方法和類(lèi)名的長(zhǎng)度則應(yīng)該與其范圍成反比。對(duì)于公共方法,短一點(diǎn)的名字會(huì)比較好,這是因?yàn)樗鼈儠?huì)被調(diào)用多次。私有方法只在類(lèi)的范圍內(nèi)被調(diào)用,長(zhǎng)一點(diǎn)的名字反而可以作為文檔使用。此條規(guī)則的例外是派生類(lèi)的名字。類(lèi)越派生,基類(lèi)前所加的形容詞就越多,名字也就越長(zhǎng)。

11.一個(gè)概念一個(gè)詞
為某個(gè)抽象概念選定一個(gè)詞,然后就不要變了。例如作為不同類(lèi)中的等效方法,get()、fetch()和retrieve()會(huì)讓人混淆起來(lái)。保持一致的詞匯是程序員駕馭代碼的重要工具。

12.不要將同一個(gè)詞用于兩個(gè)不同的概念
如果你遵循第11點(diǎn)——一個(gè)概念一個(gè)詞的原則,那么就可以避免許多有著相同方法名的類(lèi)。只要參數(shù)列表和各種方法的返回值在語(yǔ)義上是等價(jià)的就沒(méi)問(wèn)題。只有當(dāng)你將同一個(gè)詞用于兩個(gè)不同的概念時(shí)才會(huì)出現(xiàn)問(wèn)題。

例如,我們可以在多個(gè)類(lèi)中使用add()方法,通過(guò)添加或連接兩個(gè)現(xiàn)有的值來(lái)創(chuàng)建一個(gè)新的值。如果我們之后又需要在類(lèi)中引入一個(gè)add方法用于添加參數(shù)到集合中,這就會(huì)因?yàn)檎Z(yǔ)義不同而導(dǎo)致問(wèn)題。這種新方法最好是改叫為insert()。

13.使用解決方案領(lǐng)域的名字
我們編寫(xiě)的代碼今后可能會(huì)有其他程序員來(lái)閱讀,所以我們使用一些技術(shù)術(shù)語(yǔ)進(jìn)行代碼命名會(huì)帶來(lái)很大的好處。比如適當(dāng)?shù)厥褂盟惴帧⒃O(shè)計(jì)模式名字以及數(shù)學(xué)術(shù)語(yǔ),這些命名方式很可能會(huì)讓其他程序員更容易理解程序,引起共鳴。

14.使用問(wèn)題領(lǐng)域的名字
如果實(shí)在找不到易于理解的技術(shù)術(shù)語(yǔ)來(lái)命名,那么也可以從問(wèn)題領(lǐng)域來(lái)尋找合適的代碼命名。當(dāng)未來(lái)閱讀你代碼的程序員不確定代碼意義的時(shí)候,這將為他們提供一些問(wèn)題的線索。

15.添加有意義的語(yǔ)境
大多數(shù)名字其本身是沒(méi)有意義的,并且需要放到語(yǔ)境(類(lèi)/函數(shù)/命名空間)中,才能讓閱讀代碼的人理解它們指代的是什么。在某些情況下,可能需要前綴名稱(chēng)以補(bǔ)充語(yǔ)境。例如,假設(shè)我們有一些用來(lái)表示地址的變量:firstName、lastName、street、houseNumber、city、state和zip。如果只看state這個(gè)變量,我們是很難推斷出它指的是什么意思,一個(gè)比較好的解決辦法就是將這些變量封裝到Address類(lèi)中。

16.不要添加沒(méi)來(lái)由的語(yǔ)境
只要意思明確,短一點(diǎn)的名字通常比長(zhǎng)的好,所以不要多此一舉地添加語(yǔ)境。名字前不應(yīng)該被加綴一些可以從類(lèi)/包/命名空間中推斷的不必要的信息。

17.避免編碼
鑒于現(xiàn)在的IDE的強(qiáng)大,我們已經(jīng)不需要編碼類(lèi)型和范圍信息到變量名和類(lèi)名中。這包括不必添加I至接口,因?yàn)槭褂么a的用戶(hù)不需要知道他們的類(lèi)正在向接口傳遞。所以如果你一定要使用編碼,那么最好是對(duì)實(shí)現(xiàn)進(jìn)行編碼而不是接口。

18.避免錯(cuò)誤的信息
不要給一些錯(cuò)誤的信息,因?yàn)檫@樣會(huì)誤導(dǎo)閱讀代碼的人。如果你將一個(gè)實(shí)際支持?jǐn)?shù)組的變量命名為accountList,那就很容易讓人得出錯(cuò)誤的結(jié)論。

19.使用讀不出來(lái)的名字
編程是一個(gè)社會(huì)化的活動(dòng),使用那些讀不出來(lái)的名字只會(huì)阻礙我們的討論。

20.使用易搜索的名字
使用短而通用的名字會(huì)妨礙我們?cè)诖a庫(kù)中搜索事物。這對(duì)我們操縱代碼和重構(gòu)很有影響。

最后,如有不同意見(jiàn),歡迎不吝賜教。

譯文鏈接:http://www.codeceo.com/article/20-naming-tips-programmer-know.html
英文原文:20 Tips for Better Naming
翻譯作者:碼農(nóng)網(wǎng) – 小峰

標(biāo)簽:南昌 文山 東莞 桂林 鹽城 黔南 宣城 景德鎮(zhèn)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《每個(gè)程序員需掌握的20個(gè)代碼命名小貼士》,本文關(guān)鍵詞  每個(gè),程序員,需,掌握,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《每個(gè)程序員需掌握的20個(gè)代碼命名小貼士》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于每個(gè)程序員需掌握的20個(gè)代碼命名小貼士的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    免费人成在线不卡| 国产精品99久久久久久久女警| 曰韩精品一区二区| 久久99国产精品成人| 精品国产乱码久久久久久影片| 久久精品国产精品亚洲综合| 久久综合色播五月| 成人av免费在线播放| 亚洲天堂久久久久久久| 91麻豆蜜桃一区二区三区| 亚洲女同ⅹxx女同tv| 色婷婷久久一区二区三区麻豆| 亚洲一区二区三区小说| 欧美挠脚心视频网站| 男男gaygay亚洲| 精品福利视频一区二区三区| 成人综合在线观看| 亚洲国产成人tv| 国产丝袜欧美中文另类| 欧美这里有精品| 美女高潮久久久| 国产欧美日韩不卡| 日本道精品一区二区三区| 美女一区二区视频| 1024精品合集| 日韩欧美中文字幕制服| 色综合激情五月| 欧美一三区三区四区免费在线看| 日韩中文字幕91| 日本一区二区久久| 欧美久久一二区| 不卡一二三区首页| 蜜臀av性久久久久蜜臀aⅴ| 中文字幕国产一区| 欧美大片日本大片免费观看| 欧美性淫爽ww久久久久无| 精品一区二区三区的国产在线播放| 国产精品人成在线观看免费| 欧美大片在线观看一区| 在线视频亚洲一区| 99久久久精品免费观看国产蜜| 蜜桃久久av一区| 亚洲国产va精品久久久不卡综合| 久久综合狠狠综合| 欧美久久久久久久久久| 高清视频一区二区| 国产精品一区二区在线看| 麻豆精品精品国产自在97香蕉| 一区二区三区在线视频观看58| 欧美国产精品一区| 国产日产亚洲精品系列| 2020国产精品| 欧美成人国产一区二区| 欧美一区二区三区视频| 欧美视频一区在线| 91碰在线视频| 色老综合老女人久久久| 99re8在线精品视频免费播放| 国产白丝精品91爽爽久久| 国产精品99久| 成人国产精品视频| 99精品久久久久久| 99在线热播精品免费| 国产九色精品成人porny| 国产福利精品一区| 丰满少妇在线播放bd日韩电影| 国产精品一区久久久久| 成人在线综合网| 播五月开心婷婷综合| 成人av小说网| 91丨九色丨国产丨porny| 91亚洲男人天堂| 91久久精品国产91性色tv| 欧美午夜精品免费| 日韩欧美三级在线| 欧美国产综合一区二区| 亚洲日本va午夜在线影院| 亚洲最色的网站| 秋霞国产午夜精品免费视频| 国产一区二区三区黄视频| 成人黄色在线视频| 欧美亚洲国产bt| 日韩一区二区在线观看视频播放| 精品国产乱码久久久久久久久| 欧美国产日本视频| 亚洲成人一区二区| 国产精品中文字幕一区二区三区| 99精品国产视频| 欧美成人精精品一区二区频| 欧美国产综合色视频| 亚洲一区二区在线免费看| 免费成人你懂的| 99riav久久精品riav| 欧美一级片在线观看| 国产精品你懂的在线欣赏| 亚洲综合色区另类av| 韩国午夜理伦三级不卡影院| 一本色道综合亚洲| 欧美精品一区二区三区高清aⅴ| 最新中文字幕一区二区三区| 日精品一区二区| 99视频一区二区| 日韩免费观看高清完整版| 亚洲色图丝袜美腿| 久久精品国产久精国产| 色婷婷激情综合| 国产欧美一区二区精品性| 日韩一区欧美二区| 色综合天天综合狠狠| 精品国产麻豆免费人成网站| 一区二区三区在线视频观看| 丁香婷婷综合色啪| 欧美xingq一区二区| 亚洲一区二区精品3399| 成人av资源下载| 精品理论电影在线| 日韩成人精品在线| 欧美日韩视频在线第一区| 最新不卡av在线| 成熟亚洲日本毛茸茸凸凹| 日韩限制级电影在线观看| 亚洲伊人伊色伊影伊综合网| av电影一区二区| 欧美国产在线观看| 国产白丝网站精品污在线入口| 欧美一区欧美二区| 日日摸夜夜添夜夜添国产精品| 91久久精品一区二区三| 自拍偷拍欧美精品| 99久久久精品| 亚洲免费观看高清完整| 91香蕉国产在线观看软件| 中文字幕一区二区在线观看| 成人一级视频在线观看| 国产性色一区二区| 国产91精品一区二区麻豆亚洲| 国产清纯白嫩初高生在线观看91| 国产毛片精品一区| 日本一区二区三区免费乱视频| 韩国av一区二区三区在线观看| 欧美疯狂做受xxxx富婆| 三级一区在线视频先锋 | 欧美伦理视频网站| 亚洲国产成人精品视频| 欧美探花视频资源| 婷婷综合五月天| 欧美一区永久视频免费观看| 久久99最新地址| 国产日本一区二区| 91免费看`日韩一区二区| 亚洲精品写真福利| 欧美日韩国产高清一区二区| 午夜精品久久久| 日韩亚洲欧美综合| 国产mv日韩mv欧美| 亚洲一区二三区| 欧美精品一区二区三区在线| 国产综合久久久久久久久久久久 | 日韩欧美国产系列| 国产精品一线二线三线| 亚洲欧洲精品成人久久奇米网| 欧美综合在线视频| 精品一区二区免费| 亚洲日韩欧美一区二区在线| 欧美伊人久久大香线蕉综合69 | 成人激情文学综合网| 亚洲精品国产精华液| 51精品国自产在线| 成人动漫精品一区二区| 亚洲午夜免费福利视频| 久久亚洲私人国产精品va媚药| 99视频精品全部免费在线| 男男成人高潮片免费网站| 国产精品伦理在线| 在线播放一区二区三区| 国产成人午夜高潮毛片| 亚洲国产精品自拍| 国产调教视频一区| 91麻豆精品国产综合久久久久久| 国产精品一区二区无线| 亚洲电影你懂得| 专区另类欧美日韩| 久久一二三国产| 日韩一级高清毛片| 欧美日韩一区三区| 一本到不卡免费一区二区| 国产真实乱对白精彩久久| 亚洲最色的网站| 国产欧美一区二区三区沐欲| 欧美在线|欧美| youjizz国产精品| 精品亚洲porn| 五月天丁香久久| 国产精品短视频| 国产日韩精品一区二区三区| 久久亚洲精品国产精品紫薇| 欧美美女一区二区三区| 欧美自拍偷拍一区| av成人老司机| 国产成人一区在线|