日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Github標(biāo)星7.9K!程序員專屬的命名寶典來(lái)了

 命名一直是程序員最煩惱的事情之一,一個(gè)好的命名可以讓一段代碼看起來(lái)可讀性更強(qiáng),后續(xù)維護(hù)的人員也會(huì)更輕松。因此,在團(tuán)隊(duì)中統(tǒng)一使用同一套命名規(guī)范是相當(dāng)有必要的。

創(chuàng)新互聯(lián)建站專注于木壘哈薩克企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城網(wǎng)站定制開發(fā)。木壘哈薩克網(wǎng)站建設(shè)公司,為木壘哈薩克等地區(qū)提供建站服務(wù)。全流程按需設(shè)計(jì)網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)

今天,猿妹要和大家分享一份命名寶典,專門幫助程序員如何命名,這個(gè)項(xiàng)目介紹了命名時(shí)需要考慮的數(shù)個(gè)要點(diǎn),旨在幫你解決命名困難的問(wèn)題,教你如何便捷、輕松地進(jìn)行命名,這個(gè)項(xiàng)目就叫——naming-cheatsheet。

naming-cheatsheet已經(jīng)在Github上標(biāo)星 7.9K,累計(jì)分支 386 個(gè)(Github地址:https://github.com/kettanaito/naming-cheatsheet)

這些命名規(guī)則適用于任何編程語(yǔ)言,創(chuàng)建者以JavaScript為例演示,一起來(lái)看看吧:

英語(yǔ)命名

在命名變量和函數(shù)名時(shí)用英文名稱命名:

 
 
 
 
  1. /* Bad */ 
  2.  
  3. const primerNombre = 'Gustavo' 
  4.  
  5. const amigos = ['Kate', 'John'] 
  6.  
  7. /* Good */ 
  8.  
  9. const firstName = 'Gustavo' 
  10.  
  11. const friends = ['Kate', 'John'] 

不管你喜歡與否,英語(yǔ)是編程中的主導(dǎo)語(yǔ)言,所有編程語(yǔ)言的語(yǔ)法都是用英語(yǔ)編寫的,還有無(wú)數(shù)的文檔和教學(xué)資料也是英文,通過(guò)英語(yǔ)編寫代碼,可以極大地增加代碼的凝聚力。

約定命名

選擇一套命名規(guī)范并遵循它,在團(tuán)隊(duì)中保持命名的一致性,它可以是camelCase、PascalCase、snake_case或其他任何東西。許多編程語(yǔ)言在命名約定方面都有自己的傳統(tǒng),你可以查看自己的編程語(yǔ)言文檔或者學(xué)習(xí)一些Github上流行的知識(shí)庫(kù)。

 
 
 
 
  1. /* Bad */ 
  2.  
  3. const page_count = 5 
  4.  
  5. const shouldUpdate = true 
  6.  
  7. /* Good */ 
  8.  
  9. const pageCount = 5 
  10.  
  11. const shouldUpdate = true 
  12.  
  13. /* Good as well */ 
  14.  
  15. const page_count = 5 
  16.  
  17. const should_update = true 

S-I-D命名原則

名稱必須簡(jiǎn)短、直觀和描述性:

  • 短:輸入一個(gè)名稱一定不要花太長(zhǎng)時(shí)間,因此一定要簡(jiǎn)短
  • 直觀:名稱讀起來(lái)一定要直觀,盡可能貼近日常用語(yǔ)
  • 描述性:名稱必須可以用最有效的方式反映它的作用
 
 
 
 
  1. /* Bad */ 
  2.  
  3. const a = 5 // "a" could mean anything 
  4.  
  5. const isPaginatable = a > 10 // "Paginatable" sounds extremely unnatural 
  6.  
  7. const shouldPaginatize = a > 10 // Made up verbs are so much fun! 
  8.  
  9. /* Good */ 
  10.  
  11. const postCount = 5 
  12.  
  13. const hasPagination = postCount > 10 
  14.  
  15. const shouldPaginate = postCount > 10 // alternatively 

避免過(guò)度的簡(jiǎn)寫

不要使用縮寫,它們只會(huì)降低代碼的可讀性,找到一個(gè)簡(jiǎn)短的可讀的名稱可能會(huì)很難,但即便如此也別使用簡(jiǎn)寫。

 
 
 
 
  1. /* Bad */ 
  2.  
  3. const onItmClk = () => {} 
  4.  
  5. /* Good */ 
  6.  
  7. const onItemClick = () => {} 

避免重復(fù)命名

上下文的名稱不應(yīng)該重復(fù)

 
 
 
 
  1. class MenuItem { 
  2.  
  3. /* Method name duplicates the context (which is "MenuItem") */ 
  4.  
  5. handleMenuItemClick = (event) => { ... } 
  6.  
  7. /* Reads nicely as `MenuItem.handleClick()` */ 
  8.  
  9. handleClick = (event) => { ... } 
  10.  

反映預(yù)期結(jié)果

變量或函數(shù)的命名應(yīng)該做到能夠反映預(yù)期的結(jié)果。

 
 
 
 
  1. /* Bad */ 
  2.  
  3. const isEnabled = itemCount > 3 
  4.  
  5. return  
  6.  
  7. /* Good */ 
  8.  
  9. const isDisabled = itemCount <= 3 
  10.  
  11. return  

以上就是命名的6大原則,除此之外,創(chuàng)建者還介紹了命名模式,諸如A/HC/LC模式、動(dòng)作、前綴、單復(fù)數(shù)等模式,感興趣的不妨自己去學(xué)習(xí)一下吧。


網(wǎng)頁(yè)名稱:Github標(biāo)星7.9K!程序員專屬的命名寶典來(lái)了
文章鏈接:http://www.dlmjj.cn/article/cojsijo.html