抽象:从相同的源创建不同的版本

时间:2012-06-15 08:11:16

标签: java ant build

我目前正在使用GPS接收器进行跟踪项目 调制解调器将GPS位置发送到服务器。 从今年开始,有一个新的调制解调器可用于升级的固件库。 我公司的硬件设计团队使用新调制解调器开发了一种新硬件。

我现在的问题是:我如何为来自相同来源的两种调制解调器类型构建我的应用程序?

我的意思是:在新的固件库中有一些类 可用的方法,我不能使用旧的调制解调器和旧的 固件库。我使用NetBeans作为我的IDE,因此我可以轻松创建不同的 ant配置为两种调制解调器类型构建应用程序, 但是我如何在我的代码中实现它。我不能有部分的 我的代码中的新固件库,因为它甚至不会编译,我必须 以某种方式“动态”链接正确的固件库。这是如何在Java中完成的? 此外,生产调制解调器的公司改变了他们的公司 name,以及我导入的所有包现在都是com.new_name.bla;而不是 com.old_name.bla;

这主要出现在我的所有源文件中。我确信有一种方法可以在Java中解决这个问题。对于这样的问题,或许还有一个很好的例子吗?

1 个答案:

答案 0 :(得分:2)

您可以创建一个封装2个库行为的单一界面。在您的代码中,您只能使用该界面。您只需要编写一些可以将每个库转换为该接口的实现的东西。

我相信这是Bridge design pattern