重构老系统遗留代码的一些方法学习笔记

简介:

clipboard1.png

clipboard2.png

clipboard3.png

clipboard4.png

clipboard5.png

clipboard6.png

clipboard7.png

clipboard8.png

clipboard9.png

clipboard10.png

clipboard11.png

clipboard12.png

正交性(orthogonality)

表示某种不相依赖性或者解耦性。如果两个或者更多事物种的一个发生变化,不会影响其他事物。这些事物就是正交的。在设计良好的系统中,数据库代码与用户界面是正交的:你可以改变界面,而不影响数据库,或者更换数据库,而不用改变界面。
如果修改代码中的现存行为只需要到一个地方修改,即拥有正交性。

开放/闭合 原则(OCP,Open Closed Principle)

对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。
对修改封闭,意味着类一旦设计完成,就可以独立完成其工作,而不要对类进行任何修改。
实现开放封闭的核心思想就是对抽象编程,而不对具体编程,因为抽象相对稳定。让类依赖于固定的抽象,所以对修改就是封闭的;
而通过面向对象的继承和对多态机制,可以实现对抽象体的继承,通过覆写其方法来改变固有行为,实现新的扩展方法,所以对于扩展就是开放的。这是实施开放封闭原则的基本思路。

本文来自云栖社区合作伙伴“汪子熙”,了解相关信息可以关注微信公众号"汪子熙"。

相关文章
|
9月前
|
数据库
重构——前提工作
重构——前提工作
|
10月前
|
设计模式 Java
【Java设计模式 规范与重构】 一 重构的目的、内容、时机、方法
【Java设计模式 规范与重构】 一 重构的目的、内容、时机、方法
120 0
|
10月前
|
程序员 测试技术
《重构2》第十章-简化条件逻辑
《重构2》第十章-简化条件逻辑
305 0
|
11月前
|
NoSQL 关系型数据库 MySQL
一日一技:如何正确为历史遗留代码补充单元测试?
一日一技:如何正确为历史遗留代码补充单元测试?
76 0
|
关系型数据库 数据库
重构老系统遗留代码的一些方法学习笔记
重构老系统遗留代码的一些方法学习笔记
111 0
重构老系统遗留代码的一些方法学习笔记
|
缓存 负载均衡 NoSQL
系统重构 | 学习笔记
快速学习系统重构
370 0
|
Cloud Native 算法 前端开发
如何面向对象做好重构?|83行代码
由阿里云云效主办的2021年第3届83行代码挑战赛已经收官。超2万人围观,近4000人参赛,85个团队组团来战。大赛采用游戏闯关玩儿法,融合元宇宙科幻和剧本杀元素,让一众开发者玩得不亦乐乎。本文作者:83行代码优秀参赛选手。
303 0
如何面向对象做好重构?|83行代码
|
消息中间件 设计模式 缓存
系统重构的道与术
准备以重构工作中容易产生误区的地方或容易被忽视的重点来聊聊,既不重复网上千篇一律的各种方案资料,也对重构工作有参考价值。
系统重构的道与术
重构-改善既有代码的设计-简化函数调用
Rename Method 函数改名 问题函数的名称未能揭示函数的用途。方法修改函数名称。动机好的函数需要有一个清晰的函数名。
977 0