代码改变世界

随笔分类 -  代码坏味道

代码坏味道

2016-03-08 01:08 by yoogo, 220 阅读, 收藏,
摘要: 肿胀 代码,方法或类膨胀到难以维护,一般是长期积累形成,从未人尝试瘦身。 这包括: 长方法,大类,长的参数列表,偏爱使用原始类型,数据块 对 OO 的滥用 对面向对象原则的不正确或一知半解。 switch 语句, 临时字段, 拒绝继承,Alternative classes with differe 阅读全文

代码坏味道 - 耦合

2016-03-05 00:12 by yoogo, 355 阅读, 收藏,
摘要: 耦合 Feature Envy 症状: 方法访问其他类的对象的属性,而不是自己的。 成因: 最常见的问题就是由数据类引起的。 治疗: 多数时候,同时需要做出改变的code 应该在一起。 收益: 不合适的亲密 症状: 一个类有大量的访问另一个类的属性和方法,类之间的联系千丝万缕。 成因: 治疗: 变双 阅读全文

代码坏味道 - 多余的代码

2016-03-04 16:52 by yoogo, 440 阅读, 收藏,
摘要: 注释 症状 注释太多 成因 因为代码违反直觉,所以需要注释说明。这也往往以为着代码的臭味。最好的注释是给类或方法起个好名字。 治疗 通过抽变量的方式给一个复杂的表达式命名; 通过抽方法的方式给一段代码命名; 收益 消除注释但是不降低代码的可读性正是重构追求的目标。 重复代码 症状 成因 无意的重复发 阅读全文

代码坏味道 - 改变的阻力

2016-03-04 14:59 by yoogo, 190 阅读, 收藏,
摘要: 需要同时修改多处 症状 当你对一个类做一点修改,你发现需要同时修改很过个看起来无关的方法。比如,添加一个产品,却影响到find ,delete,update 等多个方法 成因 程序结构不好或者复制粘贴构成的代码 治疗 抽类,抽父类,抽子类 收益 去重,提高组织性 短枪手术 症状 小的修改引起很多类的 阅读全文

代码坏味道 - OO 滥用

2016-03-04 13:31 by yoogo, 613 阅读, 收藏,
摘要: OO 滥用 switch 语句 症状: 复杂的 switch 或 一系列的if 成因: switch/case 语句在 OO 的代码中一般少见,一旦出现往往会在多个地方重复。 据经验,遇见 switch/case , 往往意味着应该考虑多态了。 治疗: 条件与属性相关的:抽子类或使用策略/状态模式 阅读全文

代码坏味道-代码膨胀

2016-03-02 15:20 by yoogo, 779 阅读, 收藏,
摘要: 代码膨胀 长方法 症状 一个方法行数太多,一般超过十行你就值得怀疑。 成因: 一个方法,日积月累,只添代码从不清理-很说时候是因为认为没有必要再创建一个新的方法,最终形成意大利面条式的代码。 治疗: 如果需要在一个方法内部添加注释,你应该把要注释的代码放到一个新方法里,即使这个代码只有一行,然后给这 阅读全文