复制码VS开放式原则

时间:2018-03-19 23:54:46

标签: design-patterns code-duplication object-oriented-analysis open-closed-principle

我对两个主题感到困惑:

1) - 代码重复(我理解得很清楚)

2) - 开放式关闭原则(需要说明何时使用?哪些场景)

在一项新功能的实施过程中发生了什么,我的同事告诉我在现有的一个类中添加一个新功能(方法),这个功能正在执行一项特定的工作。问题是这个新功能必须做一些不适合该课程的事情。我告诉他扩展该类并将该函数添加到这个新类中。他告诉我,如果我们这样做,我们将陷入代码重复,但对我来说,作为初级开发人员,我正在考虑开放式原则。

那么我们应该使用开放式原则吗?

1 个答案:

答案 0 :(得分:1)

打开-关闭原则是关于扩展的扩展和修改的关闭。这应该不会弄错,因为一旦实现就永远无法修改代码。原则仅适用于在不可避免的情况下无法修改代码的下一个需求更改之前。

但是,如果您了解该原则所针对的要点,那么您可以从该原则受助人那里获得巨大收益。仅通过替换应用程序部署文件夹中的dll模块,即可将功能扩展到已部署的应用程序。扩展行为仅通过替换二进制文件(可以方便使用)而获得,而不是通过对应用程序或其相关模块的代码修改而获得。因此,名称为扩展打开,为修改关闭

要获得这一点,您必须在开发中实现开放关闭原则。遵循的规则并不像您想的那么复杂。我已经在我的技术博客中通过可下载的示例代码详细演示了整个过程。请访问并获得想法。通过阅读本文here

,您将了解应用至少3种SOLID原理有多么简单。

愉快地应用SOLID原理!