【发布时间】:2020-09-16 13:22:43
【问题描述】:
我正在尝试找出更改现有课程的最佳方法。
所以这个类被称为ExcelReport,它有一个方法Create(data,headings)。这是现场直播并在许多地方使用。现在最近我想改变方法,以便我可以在 Excel 中格式化列。
Create(data, headings, columnformats)
为了不破坏我现有的程序,我能想出的最好办法是在类中添加另一个方法Create2(data,headings,columnformats)。
我收到很多建议说我应该使用重载方法修改现有类,我确实这样做了。但这不会破坏打开/关闭原则,因为我现有的课程正在生产中吗?
我是否应该使用新改进的方法创建一个新类 ExcelReport2(and Interface) 并使用依赖注入将其传递到我的新程序中?
【问题讨论】:
标签: c# oop design-patterns solid-principles