我希望这不是一个愚蠢的问题:
我想知道是否有一种方法可以用相同的代码(不仅仅是相同的语言)构建web客户端和windows桌面客户端(看起来相同,提供相同的功能),至少到某一点-换句话说,有一个抽象的代码,将适合web服务器和windows?
谢谢!
你应该看看Adobe的FLEX,你可以为web应用程序(在Flash下运行)和桌面应用程序(在AIR下运行)拥有相同的类/布局。唯一的区别是在主文件中,您将为每个flash和air应用程序提供一个。(其余代码可以编译成一个SWF,也要记住,您应该为web和桌面使用相同的功能)
我相信Java可以做你想做的事情,只要做一些小小的修改,就可以让它作为一个成熟的桌面应用程序运行,而不是一个Java applet。
你需要做的一件事是,确保应用程序的main
函数非常小(即,只调用主JFrame或其他),并在applet代码中复制这个简单的调用。
对于两者之间的差异,请参见例如这里和这里。您只需要一个小的源文件,该文件对于applet和应用程序来说是不同的。
Real Studio在某种程度上也允许您这样做。较新的版本可以创建web应用程序和桌面应用程序。非ui代码可以与web和桌面应用程序共享。但是UI代码必须有所不同。