我有一个巨大的类A
,我想重构并提取一个具有某些行为的部分类。现在我不想A
一步重构为 10 个部分类,但我想首先采取第一个行为,将其B
重构为C
.
然后A
它作为一种main
意志接受DI
方式B
并将C
它们用作帮助者。
我的问题是这样的:
因为这是一个部分重构(连续的......)B
并且C
依赖于一些逻辑,A
它不可能重构A
为B
并且C
没有B
并且C
依赖于A
逻辑,否则我需要立即A
分解为 10 或 20 个类。
我剩下的是:
B
并C
接受(丑陋)A
方式DI
虽然丑陋,但这将允许我进行连续重构事件更糟糕A
的是尚未准备好尚未构造,直到我用助手调用它的构造函数B
和C
.- 做完整的重构——做不到!它太复杂太冒险了,我更喜欢一步一步来——所以它也是不可接受的!我需要在重构中采取小步骤并逐步构建重构。每次我接触任何代码时,我都会做一些清理和重构(遗留代码),不能一次重构整个事情。
DI
使用 setter 也不可接受,我更喜欢依赖于ctor
.
对此有什么想法吗?有什么模式吗?