【转载】《代码大全2》读书笔记之…

本文转载至:http://ibeginner.sinaapp.com/index.php?m=Home&c=Index&a=detail&id=596e05a825ad49f0a0128f828e4eea42

请支持原作!!!! 

这一整章都是介绍代码变量的命名的,下面的话是从书中摘抄下来的,相对于其他介绍代码风格的书来说说的非常好的(个人觉得),本系列笔记从第11章开始,从最简单的开始,更详细的笔记会在后续的文章一一送上,敬请期待……

废话少说直接开始吧!!!


1, 一个好记的名字反应的通常都是问题,而不是解决方案。一个好名字通常表达的是“什么”(what),而不是“如何”(how)。一般而言,如果一个名字反映了计算的某些方面而不是问题本身那么它反映的就是“how”而非“what”了。请避免选取这样的名字,而应该在名字中反映出问题本身。


2,很多程序都有表示计算结果的变量:总额、平均值、最大值、最小值等等。如果你要用类似的与total、sum、average、max、min、record、string、pointer这样的限定词来修饰某个名字,那么请记住把限定词加在名字的最后。但是也有个例外,那就是num限定词的位置已经是约定俗成了。num放在变量名的开始位置代表一个总数:numCustomers表示员工总数。num放在变量名结束位置表示一个下标:customerNum表示员工编号。


3, 布尔变量的命名

  • 用done表示某件事情已经完成;

  • 用error表示有错误发生

  • 用found表示某个值已经找到

  • 用success或者ok表示某一项操作是否成功

    一段关于布尔变量很有意思的话:

    有些程序员喜欢在他们写的布尔变量前加is。这样,变量名就变成了一个问题:isDone?isError?isFound?isProcessingComplete?用true或者false回答问题也就为该变量给出了值。这种方法的优点之一是它不能用于那些模糊不清的名字:isStatus?这毫无意义。它的缺点之一就是降低了简单逻辑表达式的可读性:if (isFound)的可读性要略差与if (found)。


4,Java conventions

  • i和j都是整数下标

  • 常量全部大写并且用下划线分隔

  • 类名和接口名第一个单词的首字母大写,后续的单词首字母大写,如:ClassOrInterfaceName

  • 变量名和方法名第一个单词的首字母小写,后续的单词首字母大写,如:variableOrRoutingName

  • 除了用于全部大写的名字之外,不使用下划线作为单词的分隔符

  • 访问器子程序使用get和set前缀


    金句

    代码阅读的次数远远多于编写的次数。确保你所取的名字更侧重于阅读方便而不是编写方便。



    豆瓣书评:http://book.douban.com/review/1051115/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值