寫程序的過程應該是一種藝術創作過程,我們寫出來的程序體現了我們的技術水平和個人修養,
也就是說作為程序員,自己寫的程序就是自己的臉面。讓自己有臉有面的第一步就是要遵循程
序編碼規范,這里總結一些程序編寫規范。
1. 命名規范
表達清晰是命名規范的核心,常見的命名分格有:
1.1 Pascal風格
包含一到多個單詞,每一個單詞第一個字母大寫,其余字母小寫。例如:HelloWorld
1.2 Camel風格
包含一個到多個單詞,第一個單詞首字母小寫,其余單詞首字母大寫。例如:name, userPhone
除了參數與變量之外,所有命名空間,類,函數,接口,屬性等名稱的命名,使用Pascal風格
參數與變量的命名使用Camel風格
2.通用命名約定
約定的是如何選擇最適當的名稱
2.1 命名方式
2.1.1 選擇容易讀的英文名稱,可讀性比詳細描述重要。例如:ScreenX 比 ScreenHorizontally
更具有可讀性
2.1.2 除了下畫線之外,不要使用連字符或者其他非字母數字字符
2.1.3 避免使用與常用編程語言的關鍵字沖突的標識符
2.1.4 變量和方法參數使用Camel風格
2.1.5 不要使用成員變量屬性作為成員變量的前綴(其他變量命名也一樣)。例如:不要像
Users m_users; 這樣定義成員變量,應該是 Users userModel;
2.2 字母縮寫
通常不要使用縮寫,除非這種縮寫已被廣泛接受,或者團隊當中大家都認可一種縮寫。
2.3 namespace命名
命名空間的命名采用Pascal風格,取名的一般規則為Zhangsan.ProjectName(人名.項目名稱),
需要用復數時,使用復數;例如使用System.Collections而不是System.Collection
需要縮寫時,不需要加復數;例如使用System.IO而不是System.IOs
2.4 類,結構和接口命名
2.4.1 按照Pascal大小寫格式,使用名詞或者名詞短語為類,接口和值命名
2.4.2 接口命名以字母I為前綴,例如,Icomponent
2.4.3 派生類的末尾使用基類的名稱。例如從Stream繼承的Framework類型以Stream結尾
3 代碼編碼規范
3.1 適當使用空行,來增加代碼的可讀性
3.1.1 應該添加一行空行的情況:
1.方法之間
2.局部變量和它后面的語氣之間
3.方法內的功能邏輯部分之間
3.1.2 應該添加兩行空行的情況:
1.同一文件的不同部分之間
2.在類,接口及彼此之間
3.2 避免使用大文件。如果一個文件里的代碼超過300~400行,必須考慮將代碼分開到不同的類中
3.3 避免一個方法代碼行數超過25行。如果超過,應該考慮將其分解成不同的方法。
3.4方法的命名。一般將其命名為動賓短語。一個方法只完成一個任務。不要把多個任務組合到一個方法中,
即使那些任務非常小。
3.5 避免使用很多成員變量,聲明局部變量,並傳遞給方法。在方法內部可以定義變量,被稱為
局部變量;在類內部可以定義變量,被稱為成員變量
3.6 不要在方法間共享成員變量,如果在幾個方法間共享一個成員變量,那就很難知道哪個方法什
么時候修改它的值。
3.7 布爾型變量或者方法一般可以用is
、can
、has
或者should
做前綴。如,isFinished, canWork等
3.8 在類的頂部聲明所有的成員變量,靜態變量聲明在最前面
4. 控件命名
c#控件命名往往采用首字母小寫,其后的單詞首字母大寫的方式進行命名,而且往往以控件縮寫作為前綴,
后面跟名字。舉例:lblName(存放Name的lable), btnEdit(編輯button)
常見的控件縮寫如下:
5. 注釋
5.1 三斜杠(///)方式
一般用於類或者方法的前面
5.2 雙斜杠(//)方式
一般是對臨時變量,屬性等的注釋,當然也可以用在類或者方法前面,反正都是注釋
5.3 塊注釋(/*XXXX*/)方式
一般用於一段連續的注釋代碼塊
6. 參考文章
1.《c#從入門到精通(第二版)》 人民郵電出版社
2. https://www.jianshu.com/p/dc26cb8ffcb9
3. https://blog.csdn.net/antchen88/article/details/56282160
4. http://blog.jobbole.com/86170/