这是一个 C# 问题,但实际上可能与语言无关
我继承了一个大型对象模型(100 多种类型),其对象层次结构“拥有”0..n 个其他类型对象,这些对象都共享一个基础(其中存在“相对”严格的类型层次结构)。
我想开始通过继承来解耦这些对象,以组合一个基于 IoC 的系统,以开始实施一些比目前更深入的单元测试。
最好的起点是哪里?
我可以从层次结构的顶部开始,这很简单,但最初的好处最少,并且在我进一步深入链条之前会非常死记硬背,但这需要我在基础对象上实现一些重载函数签名以接受基本接口,直到我得到完全覆盖。
我可以从层次结构的底部开始,这会更棘手,因为那里的类之间有更多的交互,但会“迫使”我们对重构采取更全面的看法。
我也可以从 Base 对象(所有对象都继承自的对象)开始,这将在逻辑点启动进程,但几乎肯定会创建一个不可编译的应用程序,直到我们交换所有对象继承和函数调用.
有什么想法吗?