【发布时间】:2011-08-17 12:47:29
【问题描述】:
我正在用 java 开发一个项目,该项目最终将在 linux 和 windows 机器上运行,也许还可以在 mac 上运行。我的程序安装/配置 vnc 服务器,所以我正在寻找有关如何实施这部分项目的建议。我应该只是有一个模块化设计还是可以为这个问题创建一个独立于平台的架构?
【问题讨论】:
标签: java windows linux cross-platform
我正在用 java 开发一个项目,该项目最终将在 linux 和 windows 机器上运行,也许还可以在 mac 上运行。我的程序安装/配置 vnc 服务器,所以我正在寻找有关如何实施这部分项目的建议。我应该只是有一个模块化设计还是可以为这个问题创建一个独立于平台的架构?
【问题讨论】:
标签: java windows linux cross-platform
我认为如果不同平台上的 VNC 配置不同,您应该只创建实现它的类的接口和层次结构,即
public interface VncConfigurator {
public void configure(Configuration cofiguration) throws ConfigurationException;
}
public class WindowsVncConfigurator implements VncConfgurator {
public void configure(Configuration cofiguration) throws ConfigurationException {}
}
public class LinuxVncConfigurator implements VncConfgurator {
public void configure(Configuration cofiguration) throws ConfigurationException {}
}
等等等等
您还可以创建抽象配置器或配置器实用程序,用于实现通用逻辑。
现在创建工厂,根据平台实例化配置器的“正确”实现。你就完成了。
我相信在 Windows 上您将需要一些额外的库,例如那些提供注册表访问权限的。但如果您需要这个,请先查看以下链接:http://alexradzin.blogspot.com/2011/01/access-windows-registry-with-pure-java.html
【讨论】: