代码重构小结
来源:互联网 发布:jvcs500知乎 编辑:程序博客网 时间:2024/05/29 09:05
关于代码重构的一些总结:
能用组合(composition)就不用继承(inheritance)
HeadFirst 的设计模式这本书里面好像也提到这点。个人的感觉是当类的继承结构很深的时候,了解一个复杂的方法就会变得很痛苦,特别是一个类很庞大的时候。由于每个方法由于是多态的,在阅读代码的时候你还得搞清楚它到底是运行父类的方法还是子类的方法。而且如果这个类还跟其它的类有依赖的时候,trace这个调用关系就更痛苦了,至少不记点笔记的话,就会忘记。处理大类
经常看到有人在一个类里面做一堆的事情,这些事情可能是相关也可能不相关,每个方法可能也很庞大。我觉得这个违反类的单一职责这个原则。面对这种体积庞大的类,重构的方法往往可以用“组合“, 比例创建一些新类,每个类有自己明确的职责,比如类A处理从服务器下载日记,类B处理日记解释,最后有一个类来显示这些日记。
暂时写这么多,后面有时间再补充。
阅读全文
0 0
- 代码重构小结
- 小结_01:《重构:改善既有代码的设计》
- 小结_02:《重构:改善既有代码的设计》
- 机房重构小结
- 机房重构---小结
- 机房重构小结
- [ 重构 ] 代码重构!
- WEBIM-UI重构小结
- 机房重构--验收小结
- 关于代码重构
- 代码重构简介
- 代码重构简介
- 谈谈代码重构
- 代码重构简介
- 部分重构代码
- 代码重构
- 代码重构
- 谈谈代码重构
- 子网掩码计算
- 找到两个链表的第一个公共节点 37--剑指offer
- 【Owin 学习系列】1. 第一个 Owin 程序
- 树莓派2 配置
- cordova-plugin-camera及cordova-plugin-crop调用例程
- 代码重构小结
- springboot JPA Connection is read-only. Queries leading to data modification are not allowed
- pc端 移动端 分享
- 线程学习笔记(九)-死锁
- Debug模式的升级和扩展
- Hibernate获得session的方式
- 关于如何扛量的一点学习
- Linux下安装jdk
- Struts2 2.5 环境配置