网站大量收购独家精品文档,联系QQ:2885784924

.NET应用开发编码规范.docx

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
.NET应用开发编码规范

前言目的本文档用于规范.NET代码编写工作。任何代码编写工作都需按照此规范执行。约定在每小节下面都有一些要求必须遵守,或者建议遵守的规范。通过O(Obey)表示必须遵守,A(advise)表示建议遵守。[O2--001]XXX。表示第一章第一个必须遵守的规范。[A2-001]XXX。表示第一章第一个建议遵守的规范。参考资料编号资料名称简介作者日期出版单位001Framework Design Guidelines:Conventions,Idioms,and Patterns for Reusable.NET Lbraries框架设计师和开发人员的权威指南。Krzyszof CwalinaBrad Abrams2006年7月Microsoft Corporation002Code CompleteSteve、McConnell2006年Microsoft Corporation术语序号术语备注12345678910命名规范通用命名约定本节描述了一些通用的命名约定,它们涉及到单词的选择、单词缩写和首字母缩写词的使用规范以及如何避免使用编程语言特有的名字。 单词的选择 [O2--001]要为标识符选择易于阅读的名字; 解释对标识符的名字来说,很重要的一点是要一目了然。标识符的名字应该清楚地说明每个成员做什么,以及每个类型和参数表示什么。示例一个命为HorizontalAlignment 的属性就比AlignmentHorizontal 更易于阅读。 [O2-002]要更看重可读性,而不是更看重简短性。解释名字的意思清楚要比长度短更重要。名字应该与场景、系统的逻辑组成或物理组成以及为人熟知的概念相对应,而不应该与技术或框架相对应。示例属性名CanScrollHorizontally要胜于ScrollableX(不太明显地引用了X坐标轴)。[O2-003]不要使用下划线、连字符以及其他任何既非字符也非数字的字符。解释用大小写来区分单词,而不是用下划线、连字符或其它字符。示例不要使用user_name来表示用户名属性,而是用UserName。[O2-004]不要使用匈牙利命名法。解释匈牙利命名法过于繁琐,命名应该用于说明标识符的含义而不是它的类型。示例不要使用CDocument来定义文档类,而是使用Document。 [O2-005]不要使用与广泛使用的编程语言的关键字有冲突的标识符。解释根据CLS(公共语言规范)的第4条规则,所有符合规范等语言必须提供一种机制,允许用户访问以该语言的关键字来命名的标识符。例如,C#在这种情况下使用@符号作为转义机制(escape mechanism)。但是,由于在使用方法时,用转义序列(escape sequence)要比不用转义序列麻烦得多,因此避免使用常见的关键字仍然是个好习惯。示例 不要定义一个Type @class;的变量来表示类型,而应该用Type type;使用单词缩写和首字母缩写词[O2-006]不要使用缩写词和缩约词作为标识符名字的一部分解释一般来说,不要在标识符中使用单词缩写或首字母缩写词。正如前面所讲,对名字来说,可读性比简短更重要。另外有一点也同样重要,即不要使用未被广泛接受的单词缩写和首字母缩写词,也就是说,大多数非领域专家的人能够立刻知道它们是什么意思。示例要用GetWindow,而不要用GetWin。[O2-007]不要使用未被广泛接受的首字母缩写词,即使是被广泛接受的首字母缩写词,也应该在必须的时候才使用解释例如,UI用来表示User Interface,HTML用来表示 Hypertext Markup Language。在框架的标识中使用它们仍是不好的做法。避免使用语言特有的名字对那些所谓的基本类型,CLR平台上的编程语言通常都有自己的名字(别名)来称呼它们。例如,int 是C#中System.Int32 的别名。为了确保框架能够充分利用跨语言协作CLR的核心特性之一,避免在标识中使用语言特有的类型名是很重要的。[O2-008]要给类型名使用语义上有意义的名字,而不要使用语言特有的关键字示例例如:GetLength这个名字比GetInt要好。[O2-009]要使用CLR的通用类型名,而不要使用语言特有的别名--如果除了类型之外,标识符没有其他的语义 示例一个把类型转换为System.Int64的方法应该被命名为ToInt64,而不是Toloong(因为System.Int64是CLR类型名,它对应于C#特有的别名long)。表3-3列出了有别名的基本类型在CLR中的类型名(以及与C#、Visual Basic、C++相对应的类型名)。 [O2-010]要使用常见的名字,比如value 或item,而不要重复类型的名字如果除了类型之外, 标识符没有其他的语义

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档