转 代码外观

来源:互联网 发布:久量台灯怎么样知乎 编辑:程序博客网 时间:2024/06/05 08:24
 代码外观
 
1   列宽
   代码列宽控制在110字符左右。
 
2   换行
      当表达式超出或即将超出规定的列宽,遵循以下规则进行换行
          1、在逗号后换行。
          2、 在操作符前换行。
          3、规则1优先规则2。
     当以上规则会导致代码混乱的时候自己采取更灵活的换行规则。
 
             
3   缩进
     缩进应该是每行一个Tab(4个空格),不要在代码中使用Tab字符。
 Visual Studio.Net设置:工具->选项->文本编辑器->C#->制表符->插入空格
 
4   空行
空行是为了将逻辑上相关联的代码分块,以便提高代码的可阅读性。
    在以下情况下使用两个空行
    1、接口和类的定义之间。
    2、枚举和类的定义之间。
    3类与类的定义之间。       
     
    在以下情况下使用一个空行
         1、方法与方法、属性与属性之间。
         2、方法中变量声明与语句之间。
         3、方法与方法之间。
         4、方法中不同的逻辑块之间。
        5、方法中的返回语句与其他的语句之间。
         6、属性与方法、属性与字段、方法与字段之间。
         7、注释与它注释的语句间不空行,但与其他的语句间空一行。
 
5   空格
在以下情况中要使用到空格
        1、 关键字和左括符 “(” 应该用空格隔开。如
 
           while (true)   
 
           注意在方法名和左括符 “(” 之间不要使用空格,这样有助于辨认代码中的方法调用关键字。
          
2、   多个参数用逗号隔开,每个逗号后都应加一个空格。
3、   除了 . 之外,所有的二元操作符都应用空格与它们的操作数隔开。一元操作符、++及--与操作    数间不需要空格。
 
                     a += c + d;
                   a  =  (a  +  b)   /   (c  *  d);
               while (d++  =  s++)
                {
                    n++;
                }
                PrintSize(“size is “ + size + “/n”);
 
4、语句中的表达式之间用空格隔开。如
 
       for (expr1;  expr2;  expr3)
 
6   括号 - ()
      1左括号“(” 不要紧靠关键字中间用一个空格隔开。
      2、 左括号“(” 与方法名之间不要添加任何空格。
      3、 没有必要的话不要在返回语句中使用()。
  
        if (condition)
 
            Array.Remove(1)
 
            return 1 
 
7   花括号 - {}
       1、 左花括号 “{” 放于关键字或方法名的下一行并与之对齐。
 
             if (condition)
             {
             }
 
             public int Add(int x, int y)
             {
             }
 
                           2、 左花括号 “{” 要与相应的右花括号 “}”对齐。
       3、 通常情况下左花括号 “{”单独成行,不与任何语句并列一行。
       4、 if、while、do语句后一定要使用{},即使{}号中为空或只有一条语句。如
 
             if (somevalue == 1)
             {
                 somevalue = 2;
             }
 
5右花括号}后建议加一个注释以便于方便的找到与之相应的 {
 
               while (1)
               {
                   if  (valid)
                   {
                   } // if valid
                   else
                   {
                   } // not valid
                } // end forever

 转自:http://blog.csdn.net/sorichwalk