高质量代码总结(陆续更新)

基于自己的经验和学习的总结,做个笔记,这里是简单的例子,写的是思想,可以举一反三。

1、永远对if else switch for 保持警惕,优化if else

if...else这类语句在代码中是常见的,但可以面向对象思想优化之,就是把所有的if...else改成方法,先看个优化小例子,当然只是个简单的例子。

例子:

              //代码1
bool a; if (a == true) { return "b"; } else { return "c"; }

优化为:

//代码2


if
(a != true) return "c"; return "b";

效果是一样的,但效率就提高了,尽量先判断否的条件,因为如果否就不在继续执行了,反之就继续执行。接下来看,把if...else改成方法。

//代码3,把代码2改成代码3
CheckError((a==true),"b","c")

CheckError方法的伪代码
protected string CheckError(bool cond,string msg,string msgs)
{
    if(cond)return msg;
    return msgs
}

上面是伪代码,类似于这样,可以继续优化,就好像委托一样,把代码优化起来。

继续,如果是简单的一个if...else,就可以优化为三元判断:a?"b":"c";这样了,为啥还要if...else。

顺说一下"??",表示是否为null,例如:a??"c"。意思是a如果不为null则为a,否则为"c"。

 

2、连接字符串,用format而不用"+"

例子:

string sql = "select id from data where name=" + name;

改为:

string sql = string.Format("select id from data where name='{0}'", name);

这样可阅读性强,便于维护,参数明确。
注:如果是sql连接,可以Parameters的方式。

 

 

 

posted @ 2012-07-02 16:56  Astan  阅读(278)  评论(0编辑  收藏  举报