那些程序員崩潰又想笑的程序命名...

      網(wǎng)友投稿 974 2022-05-30

      那些讓程序員崩潰又想笑的程序命名...

      本文旨在用最通俗的語言講述最枯燥的基本知識

      1

      到一家創(chuàng)業(yè)公司上班的第一天,老員工劉XX給我看了公司他負(fù)責(zé)的項目,奇怪的是,命名是“LiuQXProject”,劉XX看著驚愕的我說:“怎么了?有什么錯嗎?”

      2

      給同事做雙十一活動相關(guān)代碼的review,學(xué)到到了很多中英混血單詞 ,獲取雙十一拼團(tuán)活動數(shù)據(jù)的接口叫做“get_ShuangShiYi_GroupTuan_activity_data”,特等獎的命名:TeDeng_price....更氣人的是,我們活動獎等有十級,他就虔誠地繼續(xù)OneDeng_price、TwoDeng_price 直到JiuDeng_price。。。噢,no??!好氣?。?!而且他還把”獎“的單詞prize寫成了price,怎么說呢?好難受..

      3

      公司來了個剛畢業(yè)的小伙子,自詡前端未來之星,喜歡研讀源碼,對開源充滿熱愛,一個月后,無意間打開他寫的一個js文件,讓我驚訝的是:變量從a到z全部用完,更氣人的是,26個字母用完之后,他竟然喪心病狂的用起來了雙拼,var aa=1,var ab=“12”,var ac=null...我問他為什么這樣命名,他說你沒研讀jQuery源碼嗎?人家就是這樣做的,簡潔大氣上檔次!

      4

      因為微信昵稱經(jīng)常有帶有一些亂七八糟的表情或者字符,在正常情況下utf-8編碼的數(shù)據(jù)庫是存不進(jìn)去的,因此讓同事幫忙寫個把微信昵稱轉(zhuǎn)換成正常的字符串的一個工具函數(shù),最終我拿到了這個工具函數(shù),名字叫做:convertingWechatNicknameintoNormalCharacters(String nickName)

      5

      實(shí)習(xí)小伙子來的頭一天就搞的滿身大汗,我說怎么了,他說我明明寫了main方法,為什么運(yùn)行不了,我一看代碼,我噻~main寫成了mian,怎么可能跑得起來啊!更殘暴的是:蘋果手機(jī)是apple_sj,Android手機(jī)是android_sj,哈哈~

      以上的種種讓人哭笑不得的命名問題..相信很多小伙伴也會碰過這樣,有些是因為經(jīng)驗不足,有些是因為一直沒有對自己寫的代碼做一些規(guī)范化的工作,有的是因為被老項目、前輩帶出來的壞習(xí)慣...這些都是編程世界里非常不好的行為,拒不完全統(tǒng)計:在一個項目中,程序員80%的時間都是在和變量、函數(shù)、方法打交道,因此一個好的命名習(xí)慣,比注釋或一份詳細(xì)的開發(fā)文檔都重要。針對于此,小編特意根據(jù)行業(yè)標(biāo)準(zhǔn)---阿里開發(fā)文檔,做了一些參考和摘抄,整理出一份關(guān)于命名方面的規(guī)范,給需要的你作參考。

      爭取多寫漂亮代碼,少寫注釋!?。?/p>

      文章提綱: 1. 整體規(guī)范 2. 包規(guī)范 3. 類規(guī)范 4. 方法規(guī)范 5. OOP的一些強(qiáng)制規(guī)范

      1. 整體規(guī)范

      所有的命名必須以英文意譯,不能以中文拼音意譯,如:獲取我的消息接口,可以寫:myMessage;但不能寫:myXiaoXi

      盡量用精簡的英文命名,但要完整表達(dá)其意義,杜絕int a ,int a1 int aa這種毫無意義的簡化寫法。

      所有命名不能以特殊符號開始,如:_age,_username

      常量用全大寫定義,單詞之間用下劃線分割語義,如:public final int REDIS_MAX_IDLE=5;

      2. 包規(guī)范

      包名全小寫,不能用特殊符號或者駝峰寫法如:com.courseLog.uitl_con是不合規(guī)范的。

      包名要符合包的作用,比如數(shù)據(jù)層要寫dao,工具包要寫util等

      3. 類規(guī)范

      類名風(fēng)格為大寫開頭的駝峰命名方式,如:ApiController、TestController等

      異常類命名使用Exception結(jié)尾,如:CustomerException

      抽象類命名使用Abstract開頭,如:AbstractCustomer

      測試類命名以它要測試的類的名稱開始,以 Test 結(jié)尾,如:CustomerControllerTest

      枚舉類命名要以Enum結(jié)尾,如果CustomerRoleEnum

      其它類型的類命名,在描述類作用的同時,也盡可能表達(dá)出類所用的一些設(shè)計模式

      4. 方法規(guī)范

      方法名使用駝峰寫法,以小寫字母開頭,如:getUserCourse();

      那些讓程序員崩潰又想笑的程序命名...

      方法內(nèi)的參數(shù)名、成員變量、局部變量均使用駝峰寫法,以小寫字母開頭,如:int userName;

      接口類的方法和屬性不要加上任何修飾符,保證代碼的簡介。

      方法定義必須要有注釋,包括(方法作用、參數(shù)名、返回類型、創(chuàng)建時間等)

      Service/DAO層方法命名規(guī)約:

      1) 獲取單個對象的方法用get做前綴。 2) 獲取多個對象的方法用list做前綴。 3) 獲取統(tǒng)計值的方法用count做前綴。 4) 插入的方法用save/insert做前綴。 5) 刪除的方法用remove/delete做前綴。 6) 修改的方法用update做前綴。

      5. OOP的一些強(qiáng)制規(guī)范

      盡量避免使用可變參數(shù)編程,相同參數(shù)類型,相同業(yè)務(wù)含義,才可以使用 Java 的可變參數(shù),避免使用 Object

      接口過時必須加@Deprecated 注解

      不能使用過時的類或方法

      所有的相同類型的包裝類對象之間值的比較,全部使用 equals 方法比較

      類內(nèi)方法定義順序依次是:公有方法或保護(hù)方法 > 私有方法 > getter/setter 方法。

      覺得本文對你有幫助?請分享給更多人?關(guān)注「編程無界」,提升裝逼技能

      本文轉(zhuǎn)載自異步社區(qū)。

      軟件開發(fā)

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:使用python獲取商品描述中的型號--基于正則表達(dá)式
      下一篇:《scikit-learn機(jī)器學(xué)習(xí)常用算法原理及編程實(shí)戰(zhàn)》—2.5 Matplotlib簡介
      相關(guān)文章
      亚洲国产精品18久久久久久| 一区二区亚洲精品精华液| 亚洲成在人线在线播放无码 | 亚洲熟妇av一区二区三区下载 | 亚洲色少妇熟女11p| 亚洲国产中文在线二区三区免| 亚洲AV日韩AV高潮无码专区| 亚洲av无码国产精品夜色午夜 | 亚洲一区二区观看播放| 中文字幕乱码亚洲无线三区 | 亚洲一区二区免费视频| 亚洲国产成+人+综合| 亚洲午夜久久久精品电影院| 亚洲国产精品午夜电影| 亚洲国产精品yw在线观看| 亚洲国产精品乱码在线观看97| 亚洲日产2021三区| 91亚洲视频在线观看| 456亚洲人成在线播放网站| www.亚洲日本| 亚洲人成自拍网站在线观看| 亚洲精品精华液一区二区| 亚洲国产成人久久精品大牛影视 | 亚洲va久久久噜噜噜久久狠狠 | 日韩亚洲Av人人夜夜澡人人爽| 精品亚洲成AV人在线观看| 亚洲成人福利在线观看| 亚洲香蕉在线观看| 亚洲日韩国产二区无码| 精品亚洲国产成人av| 亚洲国产黄在线观看| 自拍偷自拍亚洲精品情侣| 国产成人亚洲综合无码精品| 亚洲av无码精品网站| 久久综合亚洲色HEZYO社区 | 亚洲国产精品专区| 亚洲国产成人久久精品大牛影视| 午夜亚洲国产成人不卡在线| 久久亚洲av无码精品浪潮| 久久亚洲高清观看| 精品亚洲A∨无码一区二区三区|