.NET简明编码规范

转载 2004年07月30日 09:36:00
 
027.gif

.NET简明编码规范
  ——Extracted from “.NET Framework General Reference
  Design Guidelines for Class Library Developers”
  版本:V1.0

  1 Namespace 命名规范

  使用 公司名.产品名 这样的格式。
  Namespace中类的依赖关系应该体现在命名上,比如System.Web.UI.Design中的类以来于System.Web.UI。
  使用 Pascal case 命名。
   当商标(产品名)的命名风格和Pascal case不相符的时候,以商标(产品名)为准。
  在语意合适的情况下使用复数,比如System.Collections。例外是缩写和商标的情况。
  Namespace的名字不一定和Assembly一一对应。

  2 Class 命名规范

     使用名词或者名词性词组命名class。
     使用 Pascal case。
     保守地使用缩写。
     不使用type前缀,例如C来标识Class。比如,使用FileStream而不是CFileStream。
     不使用下划线。
     偶尔的在Class名称组成中需要使用I开头的时候,比如IdentityStore,just use it。
     在合适的时候,使用单词复合来标识从某个基类继承而来。比如xxxException。

  3 Interface 命名规范

     使用名词或者名词性词组命名Interface。
     使用 Pascal case。
     保守地使用缩写。
     在interface 名称前加上字母I来表示type是interface。
     在某个class是某个interface地标准实现地时候,用类似的名字来命名它们,仅仅在interface的名称前面多个I。
     不要使用下划线。

  4 Attribute 命名规范

     总是给Attribute类加上Attribute后缀。

  5 Enumeration Type 命名规范

     对Enum类型和值使用Pascal case。
     不要在Enum类型名称后面加上Enum后缀。
     对于大多数Enum类型使用单数名称,仅仅在这个Enum类型是bit fields地时候使用复数形式。
     总是给bit field Enum 类型添加FlagsAttribute。

  6 Static Field 命名规范

     使用名词、名词性词组或者名词地缩写来命名static fields。
     使用Pascal case。
     不要在static field名称中使用匈牙利命名法。
     在任何可能的情况下推荐你使用静态properties而不是public static fields。

  7 Parameter 命名规范

     对于parameter名称使用camel case。
     使用描述性的名称。参数名字应该在大多数场合下它的名字加上类型足够描述它的意义。
     使用描述参数的意义的名字而不是描述参数类型的名字。开发工具应该提供有关参数类型的有意义的信息。因而,参数的名字可以用于更好的描述意义。保守地使用基于类型的参数名字,仅仅在它们是合适的场合下使用。
     不要使用保留的参数。
     不要使用匈牙利命名法。

  8 Method 命名规范

     使用动词或者动词性词组命名。
     使用Pascal case。

  9 Property 命名规范

     使用名词或者名词性词组命名。
     使用Pascal case。
     不要使用匈牙利命名法。
     考虑使用和property type名字相同的名字作为property name。

  10 Event 命名规范

     使用Pascal case。
     不要使用匈牙利命名法。
     在event handler名字中使用EventHandler后缀。
     指定两个名字分别为sender和e的参数。sender参数代表了发出事件的对象。sender参数总是类型object,即使可能使用一个更加精确的类型。和事件相关的状态封装在名字为e的event class的实体之中。给e指定恰当而且明确的event class。
     使用EventArgs后缀命名事件参数class。
     考虑使用动词命名事件。使用进行时态来标识事件正在进行之中,使用完成时态标识事件已经完成,不要使用BeforeXxx/AfterXxx命名法。
     不要在事件声明中使用前缀和后缀,比如,用Close而不是OnClose。
     一般的,你应该同时提供一个名字为OnXxx的protected method供派生类来改写。

收藏助手
不良信息举报
您举报文章:.NET简明编码规范
举报原因:
原因补充:

(最多只允许输入30个字)