《代码整洁之道》笔记(4-6章节)
本文最后更新于 621 天前,其中的信息可能已经有所发展或是发生改变。

注释

什么也不会比陈旧,提供错误信息的注释更有破坏性。

若编程语言有足够的表达力,就根本不需要注释。

注释的恰当用法时弥补我们在用代码表达意图时遭遇的失败。

如果你发现自己需要写注释,就再想想看是否有方法翻盘。

个人认为注释还是要写,算是对代码的中文翻译,因为我们的英语水平,命名习惯各不相同。

注释掉的代码

其他人不敢删除注释掉的代码。他们会想,代码依然放在哪儿,一定有其原因,而且这段代码很重要,不能删除。

格式

垂直格式

类文件不应太庞大,适当拆分类,防止臃肿。

向报纸学习

从上往下阅读,先看到主题,再看到详细的描述。

概念间垂直方向上的区隔

使用空白行来间隔代码,标识出新的概念,读者的目光总是会停留于空白行之后的哪一行。

垂直方向上的靠近

成员变量不应用空白行隔开,这样才达到一览无余的效果。

垂直距离

变量声明应尽可能靠近其使用位置,局部变量应放在函数头部。

若某个函数调用了另一个函数,应该将被调用的函数放到下一个函数的位置。增强可读性。

概念相关的代码应该放在一起。

对象和数据结构

getter和setter,相当于将私有变量公之于众。

数据抽象

依赖倒置原则。

隐藏实现并非只是在变量之间放上一个函数层那么简单。隐藏实现关乎抽象!类并不简单地用取值器和赋值器将其变量推向外界,而是暴露抽象接口,以便用户无需了解数据的实现就能操作数据本体。

数据、对象的反对称性

过程式代码(使用数据结构的代码)便于在不改动既有数据结构的前提下添加新函数;面向对象代码便于在不改动既有函数的前提下添加新类。

反之亦然

过程式代码难以添加新数据结构,因为必须修改所有函数;面向对象代码难以添加新函数,因为必须修改所有类。

得墨忒耳率

函数只能调用本类的函数、本类属性的函数、方法参数对象的函数。

混杂

避免在实体类里写业务代码。

数据传输对象

即DTO。

作者:Yuyy
博客:https://yuyy.info
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇