`

《代码整洁之道》读书笔记(更新第二章)

    博客分类:
  • java
 
阅读更多

第二章 有意义的命名

取个好名字的简单规则
 1、名副其实
      名副其实说起来简单。但是这是一件严肃的事情。选个好名字要花时间,但省下来的时间比花掉的多。注意命名,一旦发现有更好的名字,就换掉旧的。
      如果名称需要注释来补充,那就不算是名副其实。
      比如:
      int d;//消逝的时间,以日计
   修改为:
      int elapsedTimeInDays;
  
  2、避免误导
     必须避免留下掩藏代码本意的错误线索;应当避免使用与本意相悖的词。
     提防使用不同之处的较小名称。
     比如:用小写字母l和大写字母O作为变量名。
  3、做有意义的区分
     以数字系列命名(a1,a2,....)是依义命名的对立面。
     废话是另一种没意义的区分。如:Product、ProductInfo和ProductData
     废话都是冗余的。
     如:getActiveAccount();
        getActiveAccounts();
        getActiveAccountInfo();
  4、使用读得出来的名称

  5、使用可搜索的名称
     单字母名称和数字常量有个问题,就是很难在一大篇文字中找出来。
  6、避免使用编码
     6.1匈牙利语标记法
     6.2变量前缀
     6.3接口与实现
  7、避免思维映射
     明确是王道

  8、类名
     类名和对象名应该是名词或名词短语。如:Customer
     避免使用Manager、Processor、Data或Info这样的类名。类名不应当是动词
   9、方法名
      方法名应当是动词或动词短语。如:postPayment。
      重载构造器时,使用描述了参数的静态工厂方法名:
      Complex fulcrumPoint = Complex.FromRealNumber(23.0);
     通常好于:
     Complex fullcrumPoint = new Compled(23.0);
     可以考虑将相应的构造器设置为private,强制使用这种命名手段。 
 10、别扮可爱

 11、每个概念对应一个词
     给每个抽象概念选定一个词,并且一以贯之。
 12、别用双关语
     避免将同一单词用于不同目的。同一术语用于不同概念。
 13、使用解决方案领域名称
 
 14、使用源自所涉问题领域的名称

 15、添加有意义的语境
 
 16、不要添加没用的语境
  
       不妨试试这些规则,看你的代码可读性是否有怕提升。如果你是在维护别人写的代码,使用重构工具来解决问题。效果立竿见影,而且持续下去。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics