20条.net编码习惯

简介:

为了提高代码质量,欢迎高手拍砖指点,共同进步!!!

1、不要硬编string/ numeric,可以使用一些常量代替。 (提高可读性)

复制代码
int  Count;
Count 
=   100 ;
private   static   const   int  ZERO   =    0 ;
if (  Count   ==   ZERO )
{
//  执行一些操作
}
复制代码

2、对于字符串比较-使用String. Empty ,而不是""。

3、不要声明成员变量为 public 或者proteted,尽量使用private 成员变量和public/protected 属性。 (修改)

4、当我们要在循环操作字符串,使用StringBuilder,而不是字符串,示例如下。

不好的习惯:

           String  temp  =  String.Empty;
            
for int  i  =   0  ; i <=   100 ; i ++ )
            {
                temp 
+=  i.ToString();
            }

好点的习惯:

            StringBuilder sb  =   new  StringBuilder();
            
for  (  int  i  =   0  ; i <=   100 ; i ++ )
            {
                sb.Append(i.ToString());
            }

5、简单的操作,比起Collection更倾向使用Array。 (视情况,这里是建议)

6、比起ArrayList更倾向使用Generic Collection。 (视情况,这里是建议)

7、比起HashTable更倾向使用Generic Dictionary。 (视情况,这里是建议)

8、对于字符串的操作和存储,倾向于StringCollection和StringDictionary。 (视情况,这里是建议)

9、使用适合的数据类型。

    例如:你想要判断状态,使用bool比int要好。

不好的习惯:

             int  Check  =   0 ;
            
if ( Check  ==   0  )
            {
                
//  执行一些操作

            }

好点的习惯:

             bool  Check  =   false ;
            
if ( ! Check)
            {
                
//  执行一些操作
            }

10、使用as做类型转换的时候,对转换后的值进行null值判断

复制代码
    class  A
   {

   }
   
class  B : A
   {

   }
    B objB 
=   new  B();
    A objA1  
=  (A) objB;
    A objA2 
=  objB  as  A;
    
if ( objA2  !=   null )
    {
     
//执行所需的操作
    }
复制代码

11、创建wcf代理,可以使用using表达式。 (很多地方可以这样使用)

            using (Cerate the proxy)
            {
                
//执行所需的操作
            }

 12、对于昂贵的资源(例如Connection, File 等等),遵照'Acquire late, release early’ (尽量晚的获取,尽量早的释放)准则。

例子:如果你想在数据操作时,使用的SqlConnection对象,请在方法级别,而不是在类级别创建实例。

代码

 如果你想创建的类级别SqlConnection实例,确保您的类实现了IDisposable接口,并在Dispose()中清理SqlConnection实例。

代码

13、如果你不想别人扩展你的类功能,使用‘sealed’。

14、避免为每个类都声明‘destructor’ ,因为它会增加不需要常驻内存的类的生命周期。

15、相对manual threading,更倾向用Thread Pool 。

16、在循环内不要去调用其它方法。 (call function 有性能损耗)

例如:

不好的习惯:

for int  i  =   0 ; i <=   100 ; i ++ )
{    
   Calculate(i);
}

 好点的习惯:

for int  i  =   0 ; i <=   100 ; i ++ )
{
// 直接写Calculate逻辑。
}

17、不要在循环内处理异常,而是将循环处理的逻辑放在try/catch里面

不好的习惯:

复制代码
for ( int  i  =   0  ; i <=   100 ; i ++ )
{
   try
   {
   }
   catch (Exception ex)
   {
    throw  ex;
   }
}
复制代码

好点的习惯:

复制代码
   try
   {
     for ( int  i  =   0  ; i <=   100 ; i ++ )
     {
     }
   }
   catch (Exception ex)
   {
       
throw  ex;
   }
复制代码

 18、不用通过异常处理应用程序的逻辑

例如:

不好的习惯:

复制代码
  try
  {
    int  x,y,z;
    x 
=   0 ;
    y 
=   10 ;
    z 
=  y / x;
   }
   catch (DevideByZeroException ex)
   {
    Throw ex;
   }
复制代码

好点的习惯:

复制代码
try
 {
   int  x,y,z;
   x 
=   0 ;
   y 
=   10 ;
   if ( x  !=   0  )
   {
      z 
=  y / x;
   }
 }
 catch (Exception ex)
 {
 }
复制代码

19、相对for/while  ,倾向使用foreach循环。[更正]

20、使用多层架构的系统,层与层之间的交互,比起DataSet/DataTables更倾向于使用对象传递数据。

 






本文转自麒麟博客园博客,原文链接:http://www.cnblogs.com/zhuqil/archive/2010/01/17/20-coding-habits.html,如需转载请自行联系原作者

相关文章
|
2月前
|
API
【Azure 媒体服务】Media Service的编码示例 -- 创建缩略图子画面的.NET代码调试问题
【Azure 媒体服务】Media Service的编码示例 -- 创建缩略图子画面的.NET代码调试问题
|
人工智能 开发框架 JavaScript
聊一聊.NET的网页抓取和编码转换
在本文中,你会了解到两种用于 HTML 解析的类库。另外,我们将讨论关于网页抓取,编码转换和压缩处理的知识,以及如何在 .NET 中实现它们,最后进行优化和改进。
74 0
聊一聊.NET的网页抓取和编码转换
|
前端开发 数据库
.Net MVC订单后台管理系统源码编码过程(2)
.Net MVC订单后台管理系统源码编码过程(2)
140 0
.Net MVC订单后台管理系统源码编码过程(2)
|
SQL 开发框架 前端开发
.Net MVC订单后台管理系统源码编码过程(1)
.Net MVC订单后台管理系统源码编码过程(1)
158 0
.Net MVC订单后台管理系统源码编码过程(1)
.NET 字符串 编码转换 GB2312 UTF8
将 gb2312 转换 utf8 编码 private void button1_Click(object sender, System.EventArgs e) {  byte[] temp;  //将 textBox1.
1609 0
|
开发框架 JavaScript 前端开发
ASP.NET Core 编码、web编码、网页编码System.Text.Encodings.Web
ASP.NET Core 编码、web编码、网页编码System.Text.Encodings.Web
190 0
ASP.NET Core 编码、web编码、网页编码System.Text.Encodings.Web
|
.NET Linux Windows
Asp.net core中由于页面编码导致的中文乱码
原文:Asp.net core中由于页面编码导致的中文乱码 问题描述 最近使用asp.net core写了一个简单的网站,在windows系统下完全没有出现问题。后来在linux系统中搭建了docker,并且在linux中自动使用git获取源码,编译,部署一条龙自动化。
2354 0
|
编解码 C++ Windows
利用 LibWebP-NET 解码与编码 WebP 格式图片
原文:利用 LibWebP-NET 解码与编码 WebP 格式图片 WebP 格式是谷歌开发并发展的一种最新的网络图片格式,具有压缩率高、解码快、免版权、开源等优点。 大部分先进的网页浏览器、图片浏览器都支持该格式,Windows用户可以通过安装 WebP Codec for Windows 在系统中查阅WebP图片。
2660 0
|
前端开发 JavaScript .NET
下一篇
无影云桌面