独立的实现编程设计

时间:2011-01-10 16:27:14

标签: c# java design-patterns java-ee

我想就以下问题提出设计建议:

我正在为服务器应用程序编程。(JBOSS)

这是非常常见的,但我不确定如何实现这一点。

我正在实现一个接口。

实现该接口的每个类将具有不同的实现。

将来,我确信我需要添加更多实现,这意味着我需要在代码中添加额外的“新”。

如何将“新”分配分离到不同的文件/包/ ear / jar,所以如果将来我将不得不为这个特定的接口添加其他实现,我不需要打开整个源代码。

我想尽可能地使它具有插件能力。

感谢,

射线。

2 个答案:

答案 0 :(得分:1)

听起来你正在寻找dependency injection

答案 1 :(得分:1)

如果您编写接口而不是实现(无论如何应该执行),那么您可以使用依赖注入来按配置指定实现细节。使用Spring时,这是一种相当常见的技术。

当您稍后决定使用新实现时,可以将实现类放在它们自己的jar中,添加到您的应用程序中,并且可以更改依赖项注入配置。