我有一个维护起来相当复杂的遗留类:
class OldClass {
method1(arg1, arg2) {
... 200 lines of code ...
}
method2(arg1) {
... 200 lines of code ...
}
...
method20(arg1, arg2, arg3) {
... 200 lines of code ...
}
}
这些方法庞大、非结构化且重复(开发人员喜欢复制/粘贴方法)。我想将每个方法拆分为 3-5 个小函数,一个公共(public)方法和几个助手。
您有什么建议?我想到了几个想法:
为每个方法添加几个私有(private)辅助方法并将它们加入#region(直接重构)
使用命令模式(单独文件中每个 OldClass 方法一个命令类)。
使用一个公共(public)方法和多个私有(private)辅助方法为每个方法创建辅助静态类。 OldClass 方法将实现委托(delegate)给适当的静态类(非常类似于命令)。
- >
?
提前致谢!
最佳答案
SRP - 单一职责原则和DRY - 不要重复自己
关于c# - 重构。使用大方法降低大类代码复杂性的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2994786/