代码怎么写才看起来是有经验的程序员

 时间:2026-02-14 15:01:41

1、1.用代码阐述代替注释

反例:

/// <summary>

/// !@#$%^&^&*((!@#$%^&^&*((!@#$%^&^&*((!@#$%^&^&*((

/// </summary>

/// <returns></returns>

 public decimal GetCash()

 {

     //!@#$%^&^&*((!@#$%^&^&*((

     var a = new List<decimal>() { 2m, 3m, 10m };

     var b = 2;

     var c = 0m;

     //!@#$%^&^&*((!@#$%^&^&*((!@#$%^&^&*((

     foreach (var p in a)

     {

         c += p*b;

     }

     return c;

 }

优化后:

public decimal CalculateTotalCash()

{

    var prices=new List<decimal>(){2m,3m,10m};

    var itemCount = 2;

    return prices.Sum(p => p*itemCount);

}

注释,是在别的程序猿看不懂代码的情况下使用,尽量让你的代码命名能代替注释吧。

2、2. 为布尔变量赋值

反例:

public bool IsAdult(int age)

{

    bool isAdult;

    if (age > 18)

    {

        isAdult = true;

    }

    else

    {

        isAdult = false;

    }

    return isAdult;

}

优化后:

public bool IsAdult(int age)

{

    var isAdult = age > 18;

    return isAdult;

}

3、3.双重否定的条件判断

反例:

if (!isNotRemeberMe)

{

 }

优化后:

if (isRemeberMe)

{

}

你不理解双重否定不要紧,你总知道负负得正吧

4、4.拒绝HardCode,拒绝挖坑

反例:

if (carName == "Nissan")

 {

}

优化后:

if (car == Car.Nissan)

{

 }

让错误发生的编译阶段,你能更好的发现问题

5、5.拒绝魔数

反例:

if (age > 18)

{

}

优化后:

const int adultAge = 18;

 if (age > adultAge)

{

}

所谓魔数(Magic number)就是一个魔法数字,它没有单位,每当你看到这个数字时都不了解这是什么。这个现象很常见,最好的就是给它一个值,然后替代。

6、6.复杂的条件判断

反例:

if (job.JobState == JobState.New

    || job.JobState == JobState.Submitted

    || job.JobState == JobState.Expired

    || job.JobTitle.IsNullOrWhiteSpace())

{

    //....

}

优化后:

 if (CanBeDeleted(job))

    {

        //

    }        

private bool CanBeDeleted(Job job)

{

    var invalidJobState = job.JobState == JobState.New

                          || job.JobState == JobState.Submitted

                          || job.JobState == JobState.Expired;

    var invalidJob = string.IsNullOrEmpty(job.JobTitle);

    return invalidJobState || invalidJob;

}

到受到牛气冲天了吗?

  • 女性最易动情的时刻
  • 怎样才能是自己一直精神饱满
  • 大秦帝国风云录神卡获取攻略
  • 哄女孩子技巧
  • 怎么选择正确的避孕方式。
  • 热门搜索
    htc怎么刷机 网络的特点 拔牙后多久可以镶牙 新中式风格特点 雅漾喷雾怎么样 精子活力差怎么办 江西三清山旅游攻略 保鲜膜可以加热吗 亚洲气候特点 结扎可以解扎吗