重构与重写
来源:互联网 发布:朱苏力 严重问题知乎 编辑:程序博客网 时间:2024/06/11 18:45
在从操作层面上的个人看法:
重构:在原类中改变;
重写:在继承类中改变。
?? 是否有这种逻辑呢?
------------------------------
何谓重构
重构就是一种“保持行为的转换”,或者如Martin Fowler定义的那样:“(重构)是一种对软件内部结构的改善,目的是在不改变软件的可见行为的情况下,使其更易理解,修改成本更低。”[F, 53]
重构过程包括去除重复、简化复杂逻辑和澄清模糊的代码。重构时,需要对代码无情地针砭,以改进其设计。这种改进可能很小,小到只是改变一个变量名;也可能很大,大到合并两个类层次。
要保证重构的安全性,确保所做的修改不会产生任何破坏则必须手工测试或者运行自动测试。如果能够快速地运行自动测试,确保(修改后)代码仍能工作,你就能更加大胆地进行重构,更加乐于尝试试验性的设计。
循序渐进地进行重构有助于防止增加缺陷。大多数重构过程都需花费一些时间。有些大型重构可能需要持续数天、数周甚至数月,才能完成转换。但是即便这样的大型重构也是循序渐进地实现的。
----------------《重构与模式 》
- 重构与重写
- java中的重载、重写与重构
- 重构,重写(覆盖)与重载
- java中的重载、重写与重构
- 重载、重写与重定义
- 重载重写与重定义
- 重构不等于重写
- 重构&重载&重写
- 重构、重写、重载
- 重载,重写,重构
- 重构 重写 重载
- 重载、重构和重写
- 【C#】重载重写重构
- 重写、重载和重构
- 【C#】重构、重载&重写
- C++中的重载重写与重定义
- C++ 重载 重写与重定义
- 图例类与子类,方法重构与重写,抽象类与接口
- 寄存器惯常用法
- Perl: hello world
- InfoQ--跟上Scala的脚步
- webFXTree扩展成选择树
- 生与死
- 重构与重写
- 删除ubuntu旧内核
- 表格的鼠标事件以及JavaScript动态修改DOM
- Red Hat Linux 9 教材
- 一些vc的基本知识,创建应用实例的步骤
- 计量单位的转换
- 软件框架的利器、TangramMini组件应用教程一:入门
- 软件框架的利器、TangramMini组件应用教程二:安装对象
- 软件框架的利器、TangramMini组件应用教程三:基本使用