【轉】C#3.0編碼習慣與命名規則
1.用Pascal大小寫規則命名方法、型別、結構、介面、委託、列舉、列舉項、屬性、事件等。
{
public void DataBind()
{
}
}
2.用Camel大小寫規則命名所有變數、欄位和引數。
可採用Pascal也可採用Camel大小寫規則的:常量、控制元件ID。
{
private string _productId;
private string _productName;
public void AddProduct(string productId,string productName)
{
}
}
public class BaseView:ViewPage
{
protected Label label; //Camel命名控制元件ID
protected Login Login1; //Pascal名稱空間ID
}
3.所有的私有成員變數前加字首“_”。
{
private string _connectionString;
}
4.介面的名稱加字首 “I”。
{
byte ToByte();
}
5.自定義的屬性以“Attribute”結尾。
{
//在使用這個屬性時,不衝突的情況下,直接可以省掉TableAttribute後面的Attribute用Table也可以。
}
6.自定義的異常以Exception結尾。
{
}
7.方法的命名。一般將其命名為動賓短語。 (引數作為賓語時,在不混淆情況下,可以省略。)
{
public void CreateFile(string filePath)
{
}
public void GetPath(string path)
{
}
public void Delete(string fileName)
{
}
}
8.區域性變數的名稱要有意義。
不要用x,y,z等等,用For迴圈變數中可使用i, j, k, l, m, n。 (當迴圈巢狀超過三個時,應抽出方法。)
{
public void GetUser()
{
string[] userIds={ "ziv", "zorywa", "zlh"};
for(int i=0,k=userIds.Length;i <k;i++)
{
}
}
}
9.所有的成員變數宣告在類的頂端,用一個換行把它和方法分開。
{
private string _productId;
private string _productName;
public void AddProduct(string productId,string productName)
{
}
}
10.用有意義的名字命名namespace,如:公司名、產品名。 (有人問到,如果是公用類庫怎麼辦,我的答案是,規則依然執行,比如Zivsoft.Data,或Zivsoft.Data.Access等)
{
}
namespace ERP//產品命名
{
}
11.建議區域性變數在最接近使用它時再宣告。
12.使用某個控制元件的值時,儘量命名區域性變數。
{
string title=this.lblTitle.Text;
return title;
}
14.把引用的系統的namespace和自定義或第三方的用一個換行把它們分開。
using System.Web.UI;
using System.Windows.Forms;
using Zivsoft.Data;
using Zivsoft.Data.SQLServer;//注意,最好建議按字目順序排序
using Zivsoft.Localization;
15.檔名要能反應類的內容,最好是和類同名,一個檔案中一個類或一組關連類。 如果程式碼超過3000行,或者一個類分幾塊,可以採用Config.private.cs或Config.public.cs命名。
16.目錄結構中要反應出namespace的層次。
17.大括號 "{“要新起一行。 個人覺得比較直觀。
{
//
// TODO: 在此處新增建構函式邏輯
//
}
18. 普通get/set屬性,建議採用3.0的風格:
{
get;
set;
}
public string Age
{
get;
private set;
}
19. 區域性變數,能用var,儘量使用var關鍵字。(注意,讀程式碼時如果造成型別不明確,採用具體型別)——其實這個問題一直在爭議當中。
var strName="Lihua";
UserInfo objUser=GetUserInfo();//注意,不推薦var
20. 物件初始化,能簡寫最好簡寫:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-608977/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 編碼規範 - 養成良好的Java編碼習慣Java
- 編碼規則指南(轉貼)
- 我的編碼習慣 —— Controller規範Controller
- 前端工程程式碼規範(一)——命名規則與工程約定前端
- 良好的JS編碼習慣與風格JS
- CSS命名規則CSS
- C#編碼習慣C#
- java 編碼的習慣Java
- J2EE開發時的包命名規則,養成良好的開發習慣
- SSIS Package 命名規則Package
- 資料庫SQL開發命名規則 (轉)資料庫SQL
- php的編碼規則PHP
- 編寫程式碼的好習慣
- Oracle OCP(18):命名規則Oracle
- 變數名命名規則變數
- CSS樣式命名規則CSS
- HP Server的命名規則Server
- zendframeworker命名規則內幕Framework
- PL/SQL的編碼規則SQL
- 我的前端編碼習慣 —— html篇前端HTML
- 編碼風格和開發習慣
- C#編碼60個好習慣C#
- Delphi編碼標準——元件命名 (轉)元件
- C++編碼命名規範 -- 目前應用C++
- web前端中的命名規則Web前端
- python變數命名規則Python變數
- Delphi編碼標準——窗體與資料模組命名 (轉)
- 【iOS 搭建基礎框架】編碼規範 (命名規範篇)iOS框架
- Java原始碼的折行規則(編碼規範)Java原始碼
- Delphi編碼標準——一般的原始碼格式規則 (轉)原始碼
- 主資料之編碼規則
- Delphi編碼標準——檔案命名 (轉)
- 密碼生成常見的編碼規則密碼
- [前端開發]–分享個人習慣的命名方式前端
- [前端開發]--分享個人習慣的命名方式前端
- 計算機編碼規則之:Base64編碼計算機
- 識別符號的命名規則和規範符號
- PHP程式碼規範的10個好習慣PHP