代码整洁之道(一)

来源:互联网 发布:淘宝上下架在那里 编辑:程序博客网 时间:2024/06/02 01:58

  过年回来开始新的学习生活~也许很长时间没有感受过太长的假期,或者一直处于紧张的学习生活中,猛然松掉这支皮筋,却不知道做些什么好,在家的时候就是看电影看电视刷微博,到最后是特别不踏实的感觉,觉得这段时间就像是躺在烟灰缸里的烟屁股,没有很多的意义。这不是我喜欢的生活,还是更爱忙碌吧~

回来以后看了一本《代码整洁之道》 的书,作者是Robert C.Martin

这一篇作为读书笔记,对知识进行梳理和总结

下边的思维导图是前7章的内容

这里写图片描述

第一章 命名

(1)名副其实:变量、函数或类的名称应该答复了所有的大问题。如果名称需要注释来补充,就不算名副其实

(2)避免误导:程序员必须避免留下掩藏代码本意的错误线索。例如:accountList,List对程序员有特殊意义。除非他是List类型,要不然就会引起错误判断;提防使用不同之处较小的名称。区分模块中的XYZControllerForEfficientHandlingOfStrings和另一处XZYControllerForEfficientStorageOfStrings,会花费很长时间

(3)做有意义的区分:如果程序员知识为了满足编译器或解释器的需要而写代码,就会制造麻烦。例如因为同一范围内两样不同的东西不能重名,你可能会随手改掉其中一个名称。有事干脆以错误的拼写充数,结果就是出现在更正拼写错误后导致编译器出错的情况。
光是添加数字系列或是废话远远不够,(a1,a2,a3)以数字命名不能提供正确的信息,不能提供导向作者的意图的线索
废话:假设你有一个Product类,还有一个ProductInfo或者ProductData类,他们虽然名称不同,意思却无区别
废话都是荣誉的。Table一次永远不应该出现在表名中。NameString会比Name好吗?难道姓名还能是浮点数?

(4)使用读的出来的名称:

(5)使用可搜索的名称:单字母名称和数字常量很难再一大篇文字中找出来。名称长短应与其作用域大小相对。

(6)避免思维映射:不应该让读者在脑中把你的名称翻译为他们数值的名称 (聪明程序员与专业程序员之间的区别在于,专业程序员了解:明确是王道)

(7)添加有意义的语境,不要添加没有意义的语境

1 0
原创粉丝点击