clean code

 

        这一章主要将的是命名。Bob大叔确实不是一般人,讲的头头是道,并且讲得很细致。虽然他和Steve McConnell两位都对命名做过自己的阐述,但是Bob大叔所讲的绝不是Steve McConnell大叔的翻版,而是有自己独到的特色。看来同为老程序员,大家的感受既有相似的地方,也有不同之处。下面来看看文章中的一些摘要。

        1.Use Intention-Revealing Names(命名要表明用途)

        命名可能需要花费一些时间,但由此带来的便利可以为你节省更多的时间;如果要给名字添加注释来表明其用途,那么这样的命名就没有表明它的用途。

        2.Avoid Disinformation(避免不含信息的命名,如d)

        名字要能体现出代码的意义。不要用小写的L和大写的O来做变量名,因为很容易被看成数字1和0。

        3.Make Meaningful Distinctions(命名要区别明显)

        数字序列命名(如A1,A2)不会带来任何有用的信息,也无法体现出作者的意图。

        4.Use Pronounceable Names(使用可正常发音的命名,这一点很重要,要不然的话程序员之间讨论问题的时候就很悲催了)

        5.Use Searchable Names(使用便于查找的命名,如果给一个变量命名为e,那么用查找工具查找变量名的时候就会很杯具,~~~~(>_<)~~~~ )

        6.不要使用成员变量前缀(如m_等),应该使用一些能够高亮成员变量的工具,并且类和方法不要写得太长。

        7.Avoid Mental Mapping(不要让别人看到你的命名要想半天将你的变量名与他们已经知道的概念联系起来。如不要使用d这样的简短命名,也不要使用意思不明确的词让你想很久,命名的原则是“清晰为王”)。

        8.类名最好使用名词,方法名最好使用动词。

        9.Pick One Word per Concept(对于同一个概念只用一个相同的单词来表达,避免一个概念用多个不同的单词来表达,这样容易把人混淆)

        10.Don’t Pun(不要用一个单词来表示多种不同的概念,这样也容易把人搞混淆)

        11.Add Meaningful Context(为命名添加有意义的上下文背景,如加前缀等)。

        12.Don’t Add Gratuitous Context(不要为命名添加无关的背景)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值