知识大全 C#编码规范(一)命名约定与风格
Posted 类型
篇首语:世事洞明皆学问,人情练达即文章。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 C#编码规范(一)命名约定与风格相关的知识,希望对你有一定的参考价值。
C#编码规范(一)命名约定与风格 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
(C# Coding Standard有多个版本 本文根据较新的 版本翻译 ) 对于第 条 我习惯直接用camel风格
一 命名约定与风格 采用Pascal风格命名类型 方法和常量 public class SomeClass const int DefaultSize = ; public void SomeMethod() 采用camel风格命名局部变量和方法参数 void MyMethod(int someNumber) int number; 命名接口时采用I作为前缀 interface IMyInterface 命名私有成员变量时采用m_作为前缀 m_后面的部分采用Pascal风格 public class SomeClass private int m_Number; 自定义特性类采用Attribute作为前缀 自定义异常类采用Exception作为前缀 命名方法时使用动宾结构短语 例如ShowDialog() 有返回值的方法应该有能描述其返回值的名称 例如GetObjectState() 采用描述性的变量名 )避免单字符的变量名 例如i或t 而是采用index或temp代替 )对public和protected成员避免使用匈牙利命名法 )不要使用缩写(例如将number缩写为num) 总是使用C#预定义的类型 而不是使用System命名空间中的别名 例如 object NOT Object string NOT String int NOT Int 类型名称的首字母通常使用大写 当处理 NET类型Type时保留后缀Type // 正确 public class LinkedList<K T> // 避免 public class LinkedList<KeyType DataType> 使用有意义的命名空间 例如产品名或公司名 避免使用完全限定的类型名称 使用using语句代替 避免在命名空间内使用using语句 所有框架的命名空间都组合在一起 并放在自定义或第三方的命名空间下
using System; using System Collections Generic; using System ComponentModel; using System Data; using MyCompany; using MyControls; 使用委托推断而不是显式实例化委托
delegate void SomeDelegate(); public void SomeMethod() SomeDelegate someDelegate = SomeMethod; 坚持严格的缩进 不要使用制表符或非标准的缩进 如一个空格 推荐是三个或四个空格 并且值应该是通过统一的 注释缩进和其代码在同一水平上 所有注释要经过拼写检查 拼错注释表示开发草率 所有成员变量要声明在顶部 空一行分开属性或方法
public class MyClass int m_Number; string m_Name;
public void SomeMethod () public void SomeMethod () 声明本地变量尽可能接近第一次使用 文件名应该体现它包含的类 当使用分部类型且分别分配到一个文件时 每个文件以逻辑部分命名 例如 //In MyClass cs public partial class MyClass //In MyClass Designer cs public partial class MyClass 允许花括号()放置在新一行 匿名方法仿照普通方法的代码布局 排列和委托声明 (放置一个开放花括号在新一行) delegate void SomeDelegate(string someString); //Correct: void InvokeMethod() SomeDelegate someDelegate = delegate(string name) MessageBox Show(name); ; someDelegate( Juval ); //Avoid void InvokeMethod() SomeDelegate someDelegate = delegate(string name)MessageBox Show(name);; someDelegate( Juval ); 没有参数的匿名方法使用空的圆括号 只有在匿名方法可能被使用在任何委托上时省略括号 delegate void SomeDelegate(); //正确 SomeDelegate someDelegate = delegate() MessageBox Show( Hello ); ; //避免 SomeDelegate someDelegate = delegate MessageBox Show( Hello ); ; Lambda表达式仿照普通方法的代码布局 排列和委托声明 省略变量类型和类型推断依赖 也使用圆括号 elegate void SomeDelegate(string someString);
SomeDelegate someDelegate = (name)=> Trace WriteLine(name); MessageBox Show(name); ; 当它们包含一个简单的语句时 只使用内嵌(in line)的Lambda表达式 对内嵌的表达式避免要花括号或rerurn语句的多重声明 省略圆括号: delegate void SomeDelegate(string someString);
void MyMethod(SomeDelegate someDelegate)
//正确: MyMethod(name=>MessageBox Show(name));
cha138/Article/program/net/201311/13227相关参考
C++、Java与C#的命名规范总结 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 摘要由于在开
C#编程规范 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一命名 用pascal规则来命名方
C#语言规范--1.12命名空间和程序集 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 除了依赖
Java程序编码规范与技巧 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! java程序编码规范
C#编码标准--编码习惯 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 避免将多个类
做为一名开发DBA最重要的renweu是经常要检查开发人员或建模人员对数据库的命名规范是否严谨下文中将主要介绍一个检查数据库数据字段命名规范与合法性的脚本仅供大家参考 检查不符合数据库命名规范的
知识大全 VBScript基础教程之十VBScript编码约定
VBScript基础教程之十VBScript编码约定 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 C# 让WebClient使用gzip编码,并解压
C#让WebClient使用gzip编码,并解压 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
VB.net编码规范 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在开发中保持良好的编码规范是
C#简单命名指南 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!