当前位置:嗨网首页>书籍在线阅读

17-代码编码规范

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

2.4.8 代码编码规范

(1)缩进和间隔。缩进用【Tab】键,不用【Spaces】键。

(2)注释需和代码对齐。多使用#regedit和#endregion代码块。

(3)在代码中垂直对齐左括号和右括号。

01  if (x == 0)
02  {
03  Response.Write(" ");
04  }

不要出现以下情况。

01  if(x == 0) {
02  Response.Write(" ");
03  }

或者:

if(x == 0){ Response.Write(" "); }

(4)适当地增加空行,来增加代码的可读性。

在下列情况下应该有两行空行。

① 同一文件的不同部分之间。

② 在类、接口及彼此之间。

在下列情况下应该有一行空行。

① 方法之间。

② 局部变量和它后边的语句之间。

③ 方法内的功能逻辑部分之间。

(5)避免使用大文件。如果一个文件里的代码超过300~400行,必须考虑将代码分开到不同类中。当然,模板生成类与逻辑层类除外。

(6)避免写太长的方法。一个典型的方法代码在1~25行之间。如果一个方法代码超过25行,应该考虑将其分解为不同的方法。

(7)为了防止在阅读代码时不得不滚动源代码编辑器,每行代码或注释在1024×768的显示频率下不得超过一显示屏。

(8)在大多数运算符之前和之后使用空格,这样做不会改变代码的意图,却可以使代码容易阅读。

例如,

int j = i + k;

而不应写为:

int j=i+k;

括号和它里面的字符之间不应该出现空格,括号应该和它前面的关键词留有空格。例如,

01  while (true)
02  {
03   
04  };

但是方法名和左括号之间不应该有空格,参数之间的逗号后应该加一个空格。例如,

method1(int i1, int i2)

for语句里的表达式之间加一个空格。例如,

for(expr1; expr2; expr3)

强制类型转换时,在类型和变量之间加一个空格。例如,

(int) i ;

(9)所有可供用户输入的字段值,必须忽略前后空白(不包含密码);在对字段值进行有效性验证时,对提交进数据库的内容必须进行SQL注入过滤与XSS过滤。

(10)一个方法只完成一个任务。不要把多个任务组合到一个方法中,即使那些任务非常小。

(11)避免使用很多成员变量,声明局部变量,并传递给方法。

(12)不要在方法间共享成员变量,如果在几个方法间共享一个成员变量,那就很难知道是哪个方法在什么时候修改了它的值。

(13)不在代码中使用具体的路径和驱动器名,使用相对路径,并使路径可编程。永远别设想你的代码是在“C:”盘运行。你不会知道,一些用户在网络或“Z:”盘运行程序。

(14)应用程序启动时进行“自检”并确保所需文件和附件在指定的位置。

如果需要的配置文件找不到,应用程序需自己创建使用默认值的一份。如果在配置文件中发现错误值,应用程序要抛出错误,给出提示消息告诉用户正确值。

(15)出现任何问题给用户一个友好的提示,错误消息需能帮助用户解决问题。

永远别用像“应用程序出错”、“发现一个错误”等之类的错误消息,而应给出像“更新数据库失败,请确保登录ID和密码正确” 的具体消息。显示错误消息时,除了说哪里错了,还应提示用户如何解决问题。不要用像“更新数据库失败”这样的,要提示用户怎么做,比如“更新数据库失败,请确保登录ID和密码正确”。

(16)错误处理和异常事件。

不要“捕捉了异常却什么也不做”。如果隐藏了一个异常,你将永远不知道异常到底发生了没有。

发生异常时,给用户提示友好的消息,但要精确记录错误的所有可能细节,包括发生的时间和相关方法、类名等。

别写太大的 try-catch 模块。如果需要,为每个执行的任务编写单独的 try-catch 模块。 这将很容易找出哪一段代码产生异常,并给用户发出特定的错误消息。

如果应用程序需要,可以编写自己的异常类。自定义异常不应从基类SystemException派生,而要继承于. IApplicationException。