作为程序员,这样的注释代码你中枪了吗?

时间 : 16-10-21 栏目 : 生活随笔 作者 : 冰镇宝贝321 评论 : 0 点击 : 1,926 次

案例描述


  代码注释是为了让别人能够更快的阅读自己的代码,但这几种注释很容易遭人讨厌哦!



 案例详解



1. 自以为很了不得的程序员


public class Program
{
    static void Main (string[] args)
    {
        string message = "Hello World!";  // 07/24/2010 Bob
        Console.WriteLine (message); // 07/24/2010 Bob
        message = "I am so proud of this code!"; // 07/24/2010 Bob
        Console.WriteLine (message); // 07/24/2010 Bob
    }
}


这个程序员自认为写了一段很了不得的代码,所以觉得有必要用自己的名字对每行代码进行标记。实施版本控制系统(VCS)能实现对代码变更的问责,但是也不会这么明显知道谁应对此负责。


2. 过时的程序员


public class Program
{
    static void Main (string[] args)
    {
        /* 这段代码不再需要 
         *因为我们发现千年虫只是一场虚惊
         *我们的系统不会恢复到1/1/1900 */
        //DateTime today = DateTime.Today;
        //if (today == new DateTime (1900, 1, 1))
        //{
        //    today = today.AddYears (100);
        //    string message = "The date has been fixed for Y2K.";
        //    Console.WriteLine (message);
        //}
    }
}


3. 多此一举的程序员


public class Program
{
    static void Main (string[] args)
    {
        / *这个程序是用在屏幕上
          *循环打印单词“I Rule!”
          *总共100万次,
          * 从0开始每次递增1
          *计数器等于100万的循环
          *停止执行。*/
        for (int i = 0; i < 1000000; i++)
        {
            Console.WriteLine ("I Rule!");
        }
    }
}


我们都知道基础的编程逻辑是如何工作的——所以你不需要多此一举来解释这些显而易见的工作原理,虽然说你解释得很 happy,但这只是在浪费时间和空间。


4. 爱讲故事的程序员


public class Program
{
    static void Main (string[] args)
    {
       /*一天和他在星巴克大街上
        *我和吉姆讨论了从咖啡销售到咖啡的问题
        *他告诉我,销售提成
        *根据下列结构。
        *星期五:25%
        *星期三:15%
        *所有其他天:5% 
        *我是否告诉你我点了一份卡拉梅
        *铁咖啡和两份Espresso?*/
        double price = 5.00;
        double commissionRate;
        double commission;
        if (DateTime.Today.DayOfWeek == DayOfWeek.Friday)
        {
            commissionRate = .25;
        }
        else if (DateTime.Today.DayOfWeek == DayOfWeek.Wednesday)
        {
            commissionRate = .15;
        }
        else
        {
            commissionRate = .05;
        }
        commission = price * commissionRate;
    }
}


如果你一定要在注释里提及需求,那么不要涉及别人的名字。销售部门的 Jim 可能会离开公司,而且很有可能大多数程序员根本不知道这是何许人也。不要在注释里提及不相干的事实。



5. “以后再做”的程序员


public class Program
{
    static void Main (string[] args)
    {
       // TODO:将来我会修复这个问题- 07 / 24 / 1995 add by bob
       /*我知道这个问题很难解决
        *而且我依赖这个函数
        *但是以后我会以更加优雅的方式
        *来打印这段代码
        *我只是现在没有时间。
        * /
       string message = "An error has occurred";
       if(message.Contains ("error"))
       {
           throw new Exception (message);
       }
    }
}



这种类型的注释包含了上面所有其他类型。如果是在项目的初始开发阶段,这种待做注释是非常有用的,但如果是在几年后的产品代码——那就会出问题了。如果有什么需要修复的,立马解决,不要把它搁置一边,“以后再做”。




本文标签

除非注明,文章均为( 冰镇宝贝321 )原创,转载请保留链接: https://bkqv5.com/archives/250.html

作为程序员,这样的注释代码你中枪了吗?:等您坐沙发呢!

发表评论




0