華為軟體編程規範學習(三)–標識符命名

來源:互聯網
上載者:User

華為軟體編程規範學習(三)--標識符命名

3-1:標識符的命名要清晰、明了,有明確含義,同時使用完整的單詞或大家基本可以理解的縮寫,避免使人產生誤解

說明:較短的單詞可通過去掉“母音”形成縮寫;較長的單詞可取單詞的頭幾個字母形成縮寫;一些單詞有大家公認的縮寫。

樣本:如下單詞的縮寫能夠被大家基本認可。

temp 可縮寫為  tmp  ;

flag 可縮寫為  flg  ;

statistic 可縮寫為  stat ;

increment 可縮寫為  inc  ;

message 可縮寫為  msg  ;

3-2:命名中若使用特殊約定或縮寫,則要有注釋說明

說明:應該在源檔案的開始之處,對檔案中所使用的縮寫或約定,特別是特殊的縮寫,進行必要的注釋說明。

3-3:自己特有的命名風格,要自始至終保持一致,不可來回變化

說明:個人的命名風格,在符合所在項目組或產品組的命名規則的前提下,才可使用。(即命名規則中沒有規定到的地方才可有個人命名風格)。

3-4:對於變數命名,禁止取單個字元(如i、j、k...),建議除了要有具體含義外,還能表明其變數類型、資料類型等,但i、j、k作局部迴圈變數是允許的

說明:變數,尤其是局部變數,如果用單個字元表示,很容易敲錯(如i寫成j),而編譯時間又檢查不出來,有可能為了這個小小的錯誤而花費大量的查錯時間。

樣本:下面所示的局部變數名的定義方法可以借鑒。

int liv_Width

其變數名解釋如下:

      l      局部變數(Local) (其它:g    全域變數(Global)...)

      i      資料類型(Interger)

      v      變數(Variable)   (其它:c    常量(Const)...)

      Width  變數含義

這樣可以防止局部變數與全域變數重名。

3-5:命名規範必須與所使用的系統風格保持一致,並在同一項目中統一,比如採用UNIX的全小寫加底線的風格或大小寫混排的方式,不要使用大小寫與底線混排的方式,用作特殊標識如標識成員變數或全域變數的m_和g_,其後加上大小寫混排的方式是允許的

樣本:Add_User不允許,add_user、AddUser、m_AddUser允許。

其他

3-1:除非必要,不要用數字或較奇怪的字元來定義標識符

樣本:如下命名,使人產生疑惑。

#define _EXAMPLE_0_TEST_

#define _EXAMPLE_1_TEST_

void set_sls00( BYTEsls );

應改為有意義的單詞命名

#define _EXAMPLE_UNIT_TEST_

#define _EXAMPLE_ASSERT_TEST_

void set_udt_msg_sls(BYTE sls );

3-2:在同一軟體產品內,應規劃好介面部分標識符(變數、結構、函數及常量)的命名,防止編譯、連結時產生衝突

說明:對介面部分的標識符應該有更嚴格限制,防止衝突。如可規定介面部分的變數與常量之前加上“模組”標識等。

3-3:用正確的反義片語命名具有互斥意義的變數或相反動作的函數等

說明:下面是一些在軟體中常用的反義片語。

add /remove       begin /end        create / destroy

insert /delete       first /last         get / release

increment /decrement                put / get

add /delete         lock /unlock      open / close

min /max          old /new         start / stop

next /previous      source / target    show / hide

send /receive       source / destination

cut /paste          up / down

樣本:

int  min_sum;

int  max_sum;

int  add_user( BYTE *user_name );

int  delete_user( BYTE *user_name );

3-4:除了編譯開關/標頭檔等特殊應用,應避免使用_EXAMPLE_TEST_之類以底線開始和結尾的定義

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.