精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

你真的會(huì)給變量命名嗎?

開(kāi)發(fā) 前端
有讀者看到標(biāo)題就開(kāi)始敲鍵盤了,這還需要寫個(gè)文章來(lái)水?命名不就是不能用 abc、123 這種,名字要有意義嘛,這有啥好講的?

[[429099]]

有讀者看到標(biāo)題就開(kāi)始敲鍵盤了,這還需要寫個(gè)文章來(lái)水?命名不就是不能用 abc、123 這種,名字要有意義嘛,這有啥好講的?

但現(xiàn)實(shí)中,雖然懂得名字要有意義,很多程序員依然無(wú)法逃離命名沼澤。

萬(wàn)金油命名法

什么叫精準(zhǔn)?

看段代碼:

看上去不是挺正常嗎?有何不可?

那我問(wèn)你,這段代碼在干嘛?你就得全神貫注去閱讀代碼細(xì)節(jié)了。已閱后,你說(shuō)這段代碼不就是把一個(gè)章節(jié)的翻譯狀態(tài)改成翻譯中。

為何你得閱完這段代碼細(xì)節(jié),才知道該方法在干嘛?

問(wèn)題就在方法名 - processChapter,該方法是在處理章節(jié)沒(méi)錯(cuò),但這名太寬泛。如果說(shuō)“將章節(jié)的翻譯狀態(tài)改成翻譯中”就叫處理章節(jié),那么請(qǐng)問(wèn):

  • 將章節(jié)的翻譯狀態(tài)改成翻譯完畢
  • 修改章節(jié)內(nèi)容

是不是也能叫處理章節(jié)呢?

所以,這的確是個(gè)過(guò)于寬泛的方法名,沒(méi)有大錯(cuò),但不精確!

乍一看,這名字有含義,但實(shí)際卻不能有效反映這段代碼的具體含義。

若做的是個(gè)信息處理系統(tǒng),你根本無(wú)法判斷,這是個(gè)博客平臺(tái)還是個(gè)圖書管理系統(tǒng)呢?

從溝通角度看,這就不是一個(gè)有效信息表達(dá)。想理解它,需要消耗大量時(shí)間精力。

命名過(guò)于寬泛,不能精確描述,這是很多代碼命名現(xiàn)狀,也是讓祖?zhèn)鞔a難以理解的根因。

回想這些命名:data、info、flag、process、handle、build、maintain、manage、modify......

這些都屬于 過(guò)于寬泛的命名,當(dāng)這些名字出現(xiàn)在你的代碼,可以肯定作者當(dāng)時(shí)也沒(méi)想好用啥名字,就開(kāi)始隨便起個(gè)萬(wàn)金油名字繼續(xù)coding了。

扯半天,那它不能叫處理章節(jié),那該叫啥?

  • 命名要能精確描述該方法在做什么

這段代碼就是“將章節(jié)改為翻譯中”。那是不是該叫 changeChapterToTranlsating?相比處理章節(jié),這個(gè)名字已經(jīng)算進(jìn)步了,但也不算是個(gè)好名字,因?yàn)樗嗟氖窃诿枋鲞@段代碼在做的細(xì)節(jié)。而封裝一段代碼成方法,就是因?yàn)槲覀儾幌胫肋^(guò)多細(xì)節(jié)。如果把細(xì)節(jié)平鋪開(kāi)來(lái),那就和直接讀代碼細(xì)節(jié)沒(méi)啥區(qū)別了。

  • 好名字應(yīng)該描述意圖,而非細(xì)節(jié)

這段代碼為何要將翻譯狀態(tài)修改成翻譯中呢?一定是有所圖的。把翻譯狀態(tài)改成翻譯中,是因?yàn)槲覀冊(cè)谶@里開(kāi)啟了一個(gè)翻譯的過(guò)程。所以,這個(gè)方法應(yīng)該叫 startTranslation

技術(shù)術(shù)語(yǔ)命名法

再看一段代碼:

這!也能有問(wèn)題?我天天看到還寫這種代碼啊。

是的,我知道你們都在寫這種風(fēng)格代碼,這就是另一個(gè)經(jīng)典問(wèn)題:技術(shù)術(shù)語(yǔ)命名法。

之所以叫 bookList,在于其聲明類型是 List。這種命名幾乎隨處可見(jiàn),如 xxMap、xxSet。

這也是種不費(fèi)腦命名法,但這種命名卻會(huì)帶來(lái)很多問(wèn)題,因?yàn)槭腔诩夹g(shù)實(shí)現(xiàn)細(xì)節(jié)的命名方式。

我們都知道面向接口編程原則,就是不要面向?qū)崿F(xiàn)編程,因?yàn)榻涌谑欠€(wěn)定的,而實(shí)現(xiàn)易變不穩(wěn)定。大多數(shù)人只覺(jué)得該原則是針對(duì)類型的,但命名方面,也同樣應(yīng)該遵循。比如,我發(fā)現(xiàn)現(xiàn)在需要的是個(gè)不重復(fù)作品集合,即我得把這個(gè)變量的類型從 List 改成 Set。變量類型相信你一定會(huì)改,但變量名你會(huì)改嗎?還真不一定,一旦忘了,就會(huì)出現(xiàn):一個(gè) bookList 變量,居然是Set類型!

那怎么命名呢?得有個(gè)更能表達(dá)意圖的名字,這段代碼表達(dá)的就是拿到一堆書,所以可以叫 books。

這名字更簡(jiǎn)單,也很表達(dá)意圖了。

追根究底,使用技術(shù)名詞,一般因?yàn)樗鄙賹?duì)應(yīng)模型。

比如,在業(yè)務(wù)代碼里若直接出現(xiàn) Redis:

通常來(lái)說(shuō),這里真正需要的是個(gè)緩存。Redis 只是緩存模型的一個(gè)具體實(shí)現(xiàn):

但其實(shí)緩存這個(gè)概念也是個(gè)技術(shù)專業(yè)術(shù)語(yǔ),也不應(yīng)出現(xiàn)在業(yè)務(wù)代碼中。

做得好的是 Spring,使用 Spring 時(shí),若需要緩存,一般是加個(gè)注解:

很多人愛(ài)用技術(shù)名詞去命名,大多因?yàn)椋?/p>

  • 熟悉的語(yǔ)言
  • 寫代碼,很多都是參考別人代碼,優(yōu)秀代碼都是一些開(kāi)源技術(shù)項(xiàng)目。那在一個(gè)技術(shù)類項(xiàng)目中,這些技術(shù)術(shù)語(yǔ)其實(shí)也就是它的業(yè)務(wù)語(yǔ)言。但對(duì)于我們的業(yè)務(wù)類項(xiàng)目,就不能生搬硬套了

若該部分確實(shí)就是處理一些技術(shù),使用技術(shù)術(shù)語(yǔ)無(wú)可厚非,但若是在處理業(yè)務(wù),就要盡可能規(guī)避技術(shù)術(shù)語(yǔ)。

像xxMap這種命名,表示映射關(guān)系,如:書id與書的映射關(guān)系,難道也不能命名為bookIdMap?

Map 表示的是個(gè)數(shù)據(jù)結(jié)構(gòu),而映射關(guān)系推薦寫成 Mapping。

高級(jí)點(diǎn)的壞味道

前面的壞味道其實(shí)本質(zhì)都是同一問(wèn)題:對(duì)業(yè)務(wù)理解不到位。

編寫可維護(hù)的代碼要使用業(yè)務(wù)語(yǔ)言。那如何知道自己的命名是否用的是業(yè)務(wù)語(yǔ)言呢?

把這個(gè)詞講給PM聽(tīng),看他懂是啥不。

團(tuán)隊(duì)里若每個(gè)人都根據(jù)自己理解命名,就可能出現(xiàn)百家爭(zhēng)鳴的命名,所以,一個(gè)良好的團(tuán)隊(duì)實(shí)踐是建立團(tuán)隊(duì)的業(yè)務(wù)詞匯表,統(tǒng)一業(yè)務(wù)命名。

當(dāng)團(tuán)隊(duì)對(duì)業(yè)務(wù)有了一致的理解后,興許還能發(fā)現(xiàn)更高級(jí)的壞味道:

看方法名,應(yīng)該是確認(rèn)章節(jié)內(nèi)容審核通過(guò)。

但我有一問(wèn),chapterId 是審核章節(jié)的 ID,這沒(méi)問(wèn)題,但 userId 是啥?了解背景后,才知道這里要 userId,是因?yàn)樾枰涗泴徍巳诵畔ⅰ?/p>

通過(guò)業(yè)務(wù)的分析,就發(fā)現(xiàn),這個(gè) userId 不是個(gè)好名字,因?yàn)樗€需要更多解釋,更好的命名是 reviewerUserId,因?yàn)檫@用戶在當(dāng)前場(chǎng)景下就是審核人(Reviewer)角色。

 

這也是一種萬(wàn)金油命名法,但它不是那種一眼就能看出的壞味道,而是需要在業(yè)務(wù)層進(jìn)行討論,所以,算個(gè)高級(jí)壞味道。

 

責(zé)任編輯:武曉燕 來(lái)源: JavaEdge
相關(guān)推薦

2016-06-01 15:42:58

Hadoop數(shù)據(jù)管理分布式

2020-04-17 14:25:22

Kubernetes應(yīng)用程序軟件開(kāi)發(fā)

2014-04-17 16:42:03

DevOps

2022-07-26 00:00:22

HTAP系統(tǒng)數(shù)據(jù)庫(kù)

2025-08-06 08:53:35

2010-07-05 16:33:00

PHPPHP命名空間

2021-11-09 09:48:13

Logging python模塊

2021-04-23 07:27:31

內(nèi)存分配CPU

2022-08-15 10:42:50

千兆網(wǎng)絡(luò)千兆光纖

2021-01-15 07:44:21

SQL注入攻擊黑客

2024-04-23 08:31:57

pythonfalse

2023-05-17 08:52:56

Java原子性可見(jiàn)性

2017-11-02 16:03:12

2023-03-16 10:49:55

2014-11-28 10:31:07

Hybrid APP

2020-02-27 10:49:26

HTTPS網(wǎng)絡(luò)協(xié)議TCP

2019-05-13 14:17:06

抓包Web安全漏洞

2019-09-16 08:40:42

2012-10-24 10:16:17

IT工程師云計(jì)算網(wǎng)絡(luò)管理

2012-05-31 09:56:54

云安全
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

久久夜色精品国产欧美乱| 色8久久人人97超碰香蕉987| 国产91色在线|亚洲| 国产性xxxx高清| 精品av一区二区| 6080午夜不卡| 国产特级黄色大片| 男女啪啪在线观看| 99久久精品免费| 国产欧美日韩高清| 精品美女久久久久| 色综合狠狠操| 亚洲精品久久久久久久久久久久久| 成人在线观看a| 9191在线播放| 日韩视频免费直播| 97超级碰碰| 日日骚av一区二区| 在线精品国产| 亚洲天堂av在线播放| 黄色片子免费看| 亚洲成人看片| 亚洲国产成人高清精品| 亚洲日本理论电影| 久香视频在线观看| 成人激情校园春色| 亚洲在线免费看| 少妇又紧又色又爽又刺激视频 | 国产真实乱人偷精品视频| 成人高清电影网站| 日韩精品视频在线观看网址| 人妻巨大乳一二三区| 日本在线视频一区二区| 精品人伦一区二区三区蜜桃网站| 日本大胆人体视频| 免费在线你懂的| 欧美激情在线观看视频免费| 精品一区久久久久久| 精品人妻无码一区二区色欲产成人| 蜜臀久久99精品久久久久宅男| 欧美在线视频一区二区| 日韩 欧美 精品| 欧美日本中文| 欧美成人精品一区| 久久久久亚洲AV成人| 国产精品成人a在线观看| 在线日韩第一页| 日韩免费成人av| 青青草综合网| 日韩一级黄色av| 日本免费网站视频| 国产精品不卡| 欧美日韩爱爱视频| 九九在线观看视频| 亚洲国产日韩欧美一区二区三区| 欧美大片免费观看| 国产精久久久久久| 9国产精品视频| 欧洲美女7788成人免费视频| 永久免费无码av网站在线观看| 免费视频久久| 国产成人短视频| 国产精品51麻豆cm传媒 | 男插女视频网站| 欧美黄视频在线观看| 欧美成人精品1314www| 香蕉在线观看视频| 看全色黄大色大片免费久久久| 亚洲精品短视频| 国产成人精品无码免费看夜聊软件| 久草在线成人| 自拍亚洲一区欧美另类| 国产性生活大片| 欧美特黄视频| 欧美一级在线亚洲天堂| 在线播放一级片| 国产一区二区美女诱惑| av在线不卡一区| 特黄aaaaaaaaa真人毛片| 久久免费视频一区| 一区二区三区免费看| 欧美精品videosex| 色欧美乱欧美15图片| 在线能看的av网站| 盗摄系列偷拍视频精品tp| 亚洲欧美日韩天堂一区二区| www成人啪啪18软件| 欧美精品导航| 国产成人黄色av| 国产熟女精品视频| www国产成人免费观看视频 深夜成人网| 天天综合狠狠精品| 日韩经典av| 欧美中文字幕一区二区三区亚洲| 人妻换人妻仑乱| 精品在线91| 欧美日韩不卡合集视频| 国产字幕在线观看| 国产成人一区二区精品非洲| 欧美下载看逼逼| 色黄网站在线观看| 欧美午夜一区二区三区免费大片| 最好看的中文字幕| 精品国产精品| 国模极品一区二区三区| 午夜日韩av| 亚洲va欧美va人人爽午夜| 91黄色小网站| 精品国产亚洲一区二区在线观看| 精品亚洲国产视频| 特级片在线观看| 久久婷婷丁香| 国产欧美日韩在线播放| av在线电影网| 黑人精品xxx一区| 极品白嫩少妇无套内谢| 首页国产精品| 久久人人爽人人| 国产欧美综合视频| 国产精品美女久久久久久久久久久| aa在线观看视频| 亚洲精品国产九九九| 日韩亚洲欧美成人| 精品乱码一区内射人妻无码| xfplay精品久久| aa在线观看视频| 国产精品tv| 欧美福利小视频| 国产人妖一区二区三区| 国产精品水嫩水嫩| 男人插女人下面免费视频| 日韩大尺度在线观看| 久久久噜噜噜久久久| wwwav网站| 亚洲男人的天堂在线aⅴ视频| 宅男噜噜噜66国产免费观看| 美女久久99| 91干在线观看| 无码国产伦一区二区三区视频 | 无码黑人精品一区二区| 日韩高清在线一区| 欧美一级二级三级九九九| 牛牛精品一区二区| 日韩经典中文字幕| 手机看片久久久| www精品美女久久久tv| 大肉大捧一进一出好爽视频| 欧美a大片欧美片| 97人人模人人爽人人喊中文字| 亚洲第一天堂影院| 亚洲午夜私人影院| 中国黄色片视频| 一本不卡影院| 欧美日韩中文国产一区发布| 免费看av不卡| 在线播放国产一区中文字幕剧情欧美| 日韩欧美国产另类| 国产精品久久精品日日| 在线能看的av网站| 国产精品chinese| 国新精品乱码一区二区三区18| 高清电影在线免费观看| 亚洲成人黄色网| 日日噜噜噜噜人人爽亚洲精品| 久久久久综合网| 色综合天天色综合| 亚洲欧洲美洲一区二区三区| 成人黄色在线免费观看| 日本不良网站在线观看| 亚洲最新av网址| 国产99999| 午夜精品一区在线观看| 99久久久无码国产精品性| 青青草视频一区| 91九色国产ts另类人妖| 国产一区二区三区亚洲| 日本精品久久久久影院| 婷婷视频在线| 精品国产一区二区三区av性色| 国产精品久久久免费视频| 国产欧美精品一区二区色综合 | 欧美成人激情视频| 性插视频在线观看| 欧美日韩小视频| 久久久无码一区二区三区| 久久综合精品国产一区二区三区 | eeuss国产一区二区三区四区| 66m—66摸成人免费视频| 北岛玲一区二区三区| 日韩久久免费av| 波多野结衣午夜| 一区二区三区国产精品| 久久精品视频18| 国产成人综合亚洲网站| 国产淫片av片久久久久久| 欧美在线黄色| 视频一区二区精品| 福利在线一区| 91精品国产综合久久香蕉的用户体验 | 成人aaaa| 精品乱子伦一区二区三区| 欧美亚洲黄色| 国产成人短视频| heyzo高清中文字幕在线| 日韩在线观看免费| 欧美日韩视频精品二区| 日韩一级高清毛片| 伊人免费在线观看高清版| 午夜精品视频在线观看| 国产精品白丝喷水在线观看| 国产欧美日韩激情| 黄色正能量网站| 成人丝袜视频网| 黄色片免费网址| 秋霞午夜鲁丝一区二区老狼| 波多野结衣之无限发射| 欧美日本精品| 中国成人亚色综合网站| 欧美精品momsxxx| 国内一区二区三区在线视频| 日韩最新av| 91久久嫩草影院一区二区| 欧美aaa大片视频一二区| 68精品久久久久久欧美| 黄网在线免费看| 欧美日韩ab片| 97超碰资源站在线观看| 久久精品国产久精国产一老狼 | 国产女人高潮的av毛片| 欧美色倩网站大全免费| 免费视频网站在线观看入口| 欧美日韩国产精品一区二区不卡中文| 欧美精品久久久久性色| 最新国产成人在线观看| 天天操天天摸天天舔| 中文字幕成人网| 综合 欧美 亚洲日本| 久久精品一区二区三区四区| 亚洲第一香蕉网| 久久久另类综合| 青娱乐国产视频| 国产日产亚洲精品系列| 日韩黄色中文字幕| 国产精品美女久久久久久2018| 日韩精品电影一区二区三区| 国产欧美日产一区| a一级免费视频| 国产精品电影院| 亚洲女人久久久| 玉足女爽爽91| 国产一级视频在线| 欧美日韩中文字幕综合视频| av黄色在线播放| 欧美性xxxxxx少妇| 国产免费的av| 欧美成人官网二区| 视频一区二区免费| 精品一区二区电影| 国产一区二区三区不卡在线| 中文字幕日韩在线视频| 老司机在线视频二区| 欧美肥婆姓交大片| www.51av欧美视频| 国产成人97精品免费看片| 久久久久久久性潮| 91入口在线观看| 理论片一区二区在线| 欧美一区二区三区四区在线观看地址 | 极品美女销魂一区二区三区| 97超碰免费在线观看| 成人精品视频一区| 精品人伦一区二区三电影| 国产精品久久久久一区二区三区| www青青草原| 欧美日韩美女视频| 在线视频免费观看一区| 精品国产免费视频| 国产中文字幕在线视频| 久久精品国产v日韩v亚洲| а√天堂资源官网在线资源| 国产精品第2页| 日韩中文字幕无砖| 日产国产精品精品a∨| 欧美国产三区| aⅴ在线免费观看| 国产美女精品在线| 亚洲专区区免费| 亚洲日本va午夜在线影院| 久久久久亚洲av成人毛片韩| 91精品国产综合久久香蕉麻豆| 四虎免费在线观看| 久久久精品2019中文字幕神马| 中文在线最新版地址| 91理论片午午论夜理片久久| 日本成人中文| 免费成人进口网站| 久久久久99| 男女性杂交内射妇女bbwxz| 中文一区在线播放| 一级aaa毛片| 欧美一区二区三区在线视频| 狠狠v欧美ⅴ日韩v亚洲v大胸| 欧美激情a在线| 久久久久黄色| 欧美一区二区综合| 亚洲美女黄网| 91大神免费观看| 国产精品天天摸av网| 午夜精品三级久久久有码| 日韩欧美一级特黄在线播放| 性开放的欧美大片| 欧美一区二区三区艳史| 一区二区三区欧洲区| 一级黄色免费在线观看| 久久午夜电影| 人妻在线日韩免费视频| 艳妇臀荡乳欲伦亚洲一区| 中文字幕在线播放日韩| 亚洲欧美变态国产另类| jizz一区二区三区| 2019国产精品视频| 99九九热只有国产精品| 欧美在线观看视频网站| 久久亚洲精精品中文字幕早川悠里| 久久久久久久极品内射| 日韩一区二区高清| 精品麻豆一区二区三区| 国产中文字幕亚洲| 日韩电影一区| 国产嫩草在线观看| 国产丝袜在线精品| 无码人妻精品一区二区三区蜜桃91| 亚洲精品电影网在线观看| 久久大胆人体| 成人av免费电影| 亚洲激情网站| 人妖粗暴刺激videos呻吟| 亚洲五码中文字幕| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的| 欧美人在线观看| 国产精品tv| 久久久999视频| www亚洲一区| 国产主播第一页| 一区二区三区四区在线观看视频| 亚洲精品在线影院| 日韩在线电影一区| 美女一区二区久久| 黄色录像免费观看| 日韩精品一区二区三区swag | 天天射—综合中文网| 91aaa精品| 亚洲一区二三区| 日本亚洲欧美| 91精品在线观看入口| 在线观看完整版免费| 国产精品一区二区久久精品| 久久一区二区三区喷水| 日本一二区免费| 亚洲精品久久嫩草网站秘色| 亚洲国产精品成人久久蜜臀| 久久全国免费视频| 精品在线观看入口| 色婷婷一区二区三区av免费看| 1区2区3区精品视频| 亚洲成人一级片| 538国产精品一区二区在线| 欧美人妖在线| 超碰人人草人人| 亚洲国产欧美在线| 黄色片免费在线| 亚洲专区国产精品| 99在线精品免费视频九九视| 欧美大波大乳巨大乳| 在线播放/欧美激情| 97久久人人超碰caoprom| 日本不卡一区二区三区在线观看 | 国产精品成久久久久| 2025中文字幕| 在线国产亚洲欧美| a级网站在线播放| 欧美激情www| 国产一区二区三区精品欧美日韩一区二区三区 | 精品欧美国产| 男女精品网站| 日本a级片视频| 亚洲欧美另类中文字幕| 色综合一区二区日本韩国亚洲| 亚洲精品久久久久久久蜜桃臀| 国产一区二区三区四区五区3d| 91免费的视频在线播放| 亚洲高清自拍| 俄罗斯毛片基地| 亚洲精品www| 自拍偷拍亚洲图片| 欧美激情国产精品日韩| 亚洲人吸女人奶水| 国产视频福利在线| 豆国产97在线| 麻豆中文一区二区|