《代码整洁之道》摘录---注释

简介: 注释的恰当用法是弥补我们在用代码表达意图时遭遇的失败。我们总无法找到不用注释就能表达自我的方法,所以总要有注释,这并不值庆贺。   如果你发现自己需要写注释,再想想看是否有办法翻盘,用代码来表达。

注释的恰当用法是弥补我们在用代码表达意图时遭遇的失败。我们总无法找到不用注释就能表达自我的方法,所以总要有注释,这并不值庆贺。

 

如果你发现自己需要写注释,再想想看是否有办法翻盘,用代码来表达。

 

注释会撒谎。注释存在的时间越久,就离其所描述的代码越远,可能变得全然错误。原因很简单:程序员不能坚持维护注释。

 

程序员应当负责将注释保持在可维护、有关联、精确的高度。我同意这种说法。但我更主张把力气用在写清楚代码上,直接保证无须编写注释。

真实只在一处地方有:代码。只有代码能忠实地告诉你它做的事,所以应当减少注释。

 

写注释的常见动机之一是糟糕的代码的存在。我们编写一个模块,发现它令人困扰、乱七八糟。我们告诉自己:最好写点注释。不!最好是把代码弄干净!

 

比如 if ( (dataType>>24) &0x0f == 1)

          dataBits = 24; //Color

        else if (dataType>>24 & 0x0f == 2)

          dataBits = 8; //Grayscale

        else

          dataBits = 1;//Black and White

 

就可以改为:

    colorType = (dataType>>24)&0x0f;

    switch(colorType)

    {

          case COLOR:

                 dataBits = 24;

          case GRAYSCALE:

                 dataBits = 8;

          case BLACK_WHITE:

          default:

                 dataBits = 1;

    }

 

TODO注释一定要定期查看,删除不再需要的,不然可能会变成一堆垃圾。

 

坏注释

  1.自言自语

    自己为标注某些未完成工作所加的注释。

  2. 外余的注释

    有时注释读起来比读代码还费劲。比如MicroSoft提供的一些例程,有时还不如先看MSDN。

  3. 误导性注释

  4.循规式注释

     为所有函数和变量都加上Doxygen格式的注释显然不是什么好主意。

  5. 日志式注释

     使用SVN之类的版本控制软件更为合理。

  6. 废话注释

     比如 

         /** 

         * Default constructor

         */

         MyClass::MyClass()

          {

              ......

           }

 

    7.代码中的签名

    8. 注释掉的代码

 

目录
相关文章
|
1月前
|
设计模式 算法 程序员
代码之禅:从功能实现到艺术表达的技术感悟
【2月更文挑战第15天】 在数字世界的无限画布上,每一行代码都承载着创造的力量。本文透过作者多年的技术探索与实践,探讨编程不仅仅是逻辑的堆砌和功能的实现,更是一种深度思考与艺术表达的过程。从最初的代码拼凑者到后来的架构设计者,再到如今追求代码艺术性的实践者,文章将带领读者一同走进程序员的内心世界,感受那些被键盘敲击声激发出的灵感火花。
|
8月前
|
监控 程序员 测试技术
程序员思维修炼 --- 读书笔记
程序员思维修炼 --- 读书笔记
14802 11
程序员思维修炼 --- 读书笔记
|
11月前
|
程序员 测试技术 开发工具
程序员成长第十篇:从阅读代码开始
程序员成长第十篇:从阅读代码开始
171 0
|
程序员 API
《代码整洁之道》-有意义的命名
《代码整洁之道》-有意义的命名
|
程序员
都说代码注释是程序员必备技能,但是你这注释也太奇葩了吧!
都说代码注释是程序员必备技能,但是你这注释也太奇葩了吧!
130 0
都说代码注释是程序员必备技能,但是你这注释也太奇葩了吧!
以前的摘录
图片发自简书App
701 0
|
程序员 Apache
代码整洁之道—注释
别给糟糕的代码加注释——重新写吧 若编程语言有足够的表达力,就不那么需要注释——也许根本不需要。 注释的恰当用法是弥补我们在用代码表达意图时遭遇的失败,注意,失败。
946 0