此处只是整理并记录下.Net开发规范以便加深编码规范。本身编码一直都是为所欲为,特别是在Java和C#之间来回切换,致使命名也乱七八糟彻底没有规范可言。一个良好的编程规范能够提高程序员的开发效率、提升程序的易读性、提升代码的可维护性等,本文分两部分:通用规范、.Net开发规范。程序员
必定要要确保代码的明确性、易读性尽可能保证清晰简洁,如函数的命名及该有的注释必需要有,让别人一看函数就知道该函数是干什么用的。编程
删除不须要的库引用。函数
尽可能少用全局变量,若是要用只读不修改影响不大,但涉及变量的修改就必定要检查变量更改对其它地方的影响,在VS中用“查找全部引用”核查全部用到的代码。测试
1 static void Main(string[] args) 2 { 3 string logMsg = null; 4 string erroMsg = null; 5 string userName = "zhangsan"; 6 string userPwd = "123456"; 7 8 //若是参数较少,可放置一行调用 9 string result = DoSomeFunctionCall(userName, userPwd, false, out logMsg, out erroMsg); 10 11 //若是参数较多状况下,可用以下方式进行调用 12 string result2 = DoSomeFunctionCall( 13 userName, 14 userPwd, 15 false, 16 out logMsg, 17 out erroMsg); 18 19 Console.WriteLine($"result={result}, result2={result2}"); 20 } 21 22 /// <summary> 23 /// 示例函数描述信息 24 /// </summary> 25 /// <param name="userName">用户名</param> 26 /// <param name="userPwd">用户密码</param> 27 /// <param name="isRememberPwd">是否记住密码</param> 28 /// <param name="logMsg">日志信息</param> 29 /// <param name="errorMsg">错误信息</param> 30 private static string DoSomeFunctionCall( 31 string userName, 32 string userPwd, 33 bool isRememberPwd, 34 out string logMsg, 35 out string errorMsg) { 36 37 logMsg = null; 38 errorMsg = null; 39 40 //Do Something 41 42 return "some result"; 43 }
将表明某些值集合的强类型参数,属性和返回值声明为枚举类型。编码
空行:适度增长空行来增长代码的可读性;spa
空格:可以使用VS回车自动格式化了;3d
注释最好简洁明了,必定不要过多的冗余注释,通常注释包括:文件头注释、函数注释、多行注释、单行注释、内联注释、代码快注释。日志
/* 文件头注释:描述整个类的主要用途,如此类主要用于测试使用。 */ using System; using System.ServiceProcess; using System.Threading; namespace StartServices { class Program { /// <summary> /// 函数注释:控制台函数入口 /// </summary> /// <param name="args"></param> static void Main(string[] args) { string logMsg = null; string erroMsg = null; string userName = "zhangsan"; string userPwd = "123456"; //单行注释:若是参数较少,可放置一行调用 string result = DoSomeFunctionCall(userName, userPwd, false, out logMsg, out erroMsg); /* * 多行注释: * 若是参数较多状况下,可用以下方式进行调用 */ string result2 = DoSomeFunctionCall( userName, //内联注释:用户名 userPwd, //密码 false, //是否记住密码 out logMsg, //日志信息输出 out erroMsg); //错误信息输出 #region 代码块注释:控制台数据输出 Console.WriteLine($"result={result}, result2={result2}"); Console.WriteLine($"result={result}, result2={result2}"); Console.WriteLine($"result={result}, result2={result2}"); Console.WriteLine($"result={result}, result2={result2}"); Console.WriteLine($"result={result}, result2={result2}"); Console.WriteLine($"result={result}, result2={result2}"); #endregion } /// <summary> /// 示例函数描述信息 /// </summary> /// <param name="userName">用户名</param> /// <param name="userPwd">用户密码</param> /// <param name="isRememberPwd">是否记住密码</param> /// <param name="logMsg">日志信息</param> /// <param name="errorMsg">错误信息</param> private static string DoSomeFunctionCall( string userName, string userPwd, bool isRememberPwd, out string logMsg, out string errorMsg) { logMsg = null; errorMsg = null; //Do Something return "some result"; } } }