C# 編碼規范


Pascal命名法:每個單詞首字母均大寫。

Camel命名法:第一個單詞首字母小寫,其余單詞首字母大寫。

類:

1、使用 Pascal 大小寫。

2、用名詞或名詞短語命名類,保證類名清晰,盡量達到望文生義的境界。

3、類名稱盡量少用或不用縮寫,若使用了縮寫一定要在注釋中詳細注明類的用途。

4、不要使用類型前綴,例如,類名稱前加上C以表示這是一個類,如:CButton。

5 、類命名中不要使用下划線及數字。

6 、有時候雖然該類不是接口,但需要提供以字母 I 開始的類名稱,此時只要 I 是作為類名稱組成部分的整個單詞的第一個字母,這依然是可行的。例如,類名 IdentityOrder 就是適用的。

類命名示例:

public class FlightBuilder

public class HotelInfo

public class TicketShopper

接口:

1、 接口使用大些字母I做前綴,其后跟名詞或名詞短語,以描述這個接口,名詞和短語使用Pascal方式,如,接口名稱 ICache。

2、接口名稱盡量少用或不用縮寫,保證接口名清晰,盡量達到望文生義的境界,若使用了縮寫一定要在注釋中詳細描述接口的用途。

3、接口名稱中不要使用下划線及數字。

接口命名示例:

public interface ICache

public interface IClone

枚舉:

1、用短語命名枚舉,采用Pascal方式,保證枚舉名清晰,盡量達到望文生義的境界。

2、枚舉名稱盡量少用或不用縮寫,若使用了縮寫一定要在注釋中詳細注明枚舉的用途。

3、不要在枚舉名稱后跟上 Enum 后綴,如:OrderFlagEnum。

4、一定不要使用漢字作為枚舉值,以免多語言環境下造成莫名。

枚舉命名示例:

public enum OrderFlag

{

         None,

         F

}

參數:

1、使用描述性參數名稱,保證參數名稱清晰,盡量達到望文生義的境界。

2、參數命名使用 Camel 方,盡量少用或不用縮寫,若使用了縮寫一定要在注釋中詳細注明參數的用途。

參數命名示例:

object GetCache(string cacheKey)

bool IsInt(string needCheckString)

方法:

1、用動詞或動詞短語命名方法名,保證方法名清晰,盡量達到望文生義的境界。

2、采用Pascal方式命名,盡量少用或不用縮寫,若使用了縮寫一定要在注釋中詳細注明方法的用途。

方法名示例:

public void ClearCache()

public char[] GetCharArray()

屬性:

1、用名詞或名詞短語命名屬性,保證屬性名清晰,盡量達到望文生義的境界。

2、采用Pascal方式命名,盡量少用或不用縮寫,若使用了縮寫一定要在注釋中詳細注明屬性的用途。

屬性示例:

public string FlightNo {

get;

set;

}

常量:

1、所有單詞大寫,多個單詞之間用 下划線(”_”)隔開,注意不是全角的下划線。 如

public const int PAGE_INDEX = 6;

局部變量及成員變量:

1、用名詞或名詞短語命名局部變量,保證變量名清晰,盡量達到望文生義的境界。

2、采用Camel方式命名,盡量少用或不用縮寫,若使用了縮寫一定要在注釋中詳細注明變量的用途。

局部變量命名示例:

int index = 6;

string airline = string.Empty;

private string flightNo = null;

特性(Attribute):

1、用名詞或名詞短語+Attribute方式命名特性,保證特性名清晰,盡量達到望文生義的境界。

2、采用Pascal方式命名,盡量少用或不用縮寫,若使用了縮寫一定要在注釋中詳細注明特性的用途。

特性命名示例:

public class ValidAttribute : Attribute

{

}

異常:

1、用名詞或名詞短語+Exception方式命名自定義異常,保證特性名清晰,盡量達到望文生義的境界。

2、采用Pascal方式命名,一定不能使用簡寫。

異常命名示例:

public class FlightException : ApplicationException

{

}

委托(delegate):

1、用動詞短語命名委托,保證委托名清晰,盡量達到望文生義的境界。

2、采用Pascal方式命名,一定不能使用簡寫。

委托命名示例:

delegate void PageChange( int pageIndex );

 

C#保留關鍵字:

避免使用與常用的 .NET 框架命名空間重復的類名稱。例如,不要將以下任何名稱用作類名稱:

System、Collections。有關 .NET 框架命名空間的列表,請參閱MSDN類庫。

另外,避免使用和以下關鍵字沖突的標識符。

AddHandler AddressOf Alias And Ansi
As Assembly Auto Base Boolean
ByRef Byte ByVal Call Case
Catch CBool CByte Cchar CDate
CDec CDbl Char Cint Class
CLng CObj Const Cshort CSng
CStr CType Date Decimal Declare
Default Delegate Dim Do Double
Each Else ElseIf End Enum
Erase Error Event Exit ExternalSource
False Finalize Finally Float For
Friend Function Get GetType Goto
Handles If Implements Imports In
Inherits Integer Interface Is Let
Lib Like Long Loop Me
Mod Module MustInherit MustOverride MyBase
MyClass Namespace New Next Not
Nothing NotInheritable NotOverridable Object On
Option Optional Or Overloads Overridable
Overrides ParamArray Preserve Private Property
Protected Public RaiseEvent ReadOnly ReDim
Region REM RemoveHandler Resume Return
Select Set Shadows Shared Short
Single Static Step Stop String
Structure Sub SyncLock Then Throw
To True Try TypeOf Unicode
Until volatile When While With
WithEvents WriteOnly Xor Eval extends
instanceof package var    
         

控件命名規則:

控件眾多,統一的命名方式也多有沖突,開發人員記憶所有控件難免弄錯,現采用默認控件類型作為前綴,前綴名稱全部小寫,控件名采用:類型縮寫+名詞短語(采用Pascal方式),雖然這樣會使命名變得冗長,但是命名更加能反應出變量的意義,開發人員也不需要去強記各個控件的縮寫。

控件示例:

<asp:Label id=”labelFlightNo” runat=”Server” />


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM