我在这里看到了一些关于这个主题的其他类似问题,但是他们没有太大帮助,所以我提出了这个问题。
将尺寸合理,简单的Web应用程序转换为针对PC和Mac的基于Java桌面的客户端的最快方法是什么?不幸的是,由于各种原因,我无法在这里分享关于应用程序的大量细节。应用程序中最复杂的UI虽然是一个包含多级线程讨论的页面(请参阅here以获取我正在谈论的内容的说明性示例。)当前的Web应用程序基于python,所以我不能重新使用服务器端代码中的任何内容(不要认为这是一个问题)
我从未做过任何swing或awt或任何其他基于Java的胖客户端GUI工作。我的想法或多或少地由基于Web的应用程序定义。我能够使用Java或python进行端到端的Web应用程序开发(包括使用HTML,CSS和JS的后端和体面的UI)。对于您的答案,请仅关注Java解决方案。
所以这是我的问题 我应该使用的最佳框架或工具是什么?作为我研究的一部分,我在网上发现了以下一些工具。
我需要记住的其他一些问题是什么?我希望你评论的一些是:
我的截止日期最长为2个月 - 考虑到我需要学习所有这些技术,这对于一个相当简单的网络应用程序是否足够?我只想在这里尝试一下 - 我知道很可能无法给出准确的答案 - 只要假设我足够聪明并且可以足够快地拿起任何不熟悉的技术堆栈。
谢谢!
答案 0 :(得分:5)
考虑到“Mac和Windows”,我会说我的建议是“Swing”(可能是SwingX 1 )。
Swing是最常用的选项,所以为了获得帮助(忽略决策中其他可能重要的因素),这将是一个不错的选择。
注1)如果SwingX有任何容易呈现线程对话的groovy组件,请添加SwingX,但我怀疑JTextPane
就足够了。
就部署而言,这比看起来更棘手。许多台式计算机没有标配Java。那些已经拥有它的人可能有旧版本。
deployJava.js
(在下面的JWS页面中提及链接)。不幸的是,虽然Java是x-plat,但程序员可以做很多事情。 E.G。
file.encoding
2 )line.separator
2 )file.separator
2 )注意2.这表示要为每个使用的属性。
显然我不能代表您,但我可以告诉您,我将无法在两个月内从“哪种技术”转变为“可部署的应用程序”。
希望你比我更有能力! ;)
答案 1 :(得分:0)
您可以尝试小步骤: *作为第一步,您可以使用SWT创建应用程序并将您的应用程序嵌入浏览器控件中。 *然后,您应该逐页将页面和一些控件从Web应用程序移动到桌面。
通过这种方式,您可以在几小时内获得最少的应用程序:)
P.S。如果你想要一个使用这种方法的iOS应用程序,那么值得关注这个开源项目:http://en.wikipedia.org/wiki/PhoneGap
答案 2 :(得分:0)
你说你想要一个Java解决方案,但要注意有很多Gui options in Python,你已经用Python编写了你的Web应用程序。
Groovy是一种与Java不同的编程语言,但Groovy在JVM上运行。您想要Java解决方案还是JVM解决方案?我问,因为你提到格里芬。
假设您需要Java,我认为您的主要选项是Swing,SWT,JavaFX 2和Apache Pivot。 Oracle已经表示,他们打算将JavaFX作为replace Swing作为首选的GUI平台。也就是说,JavaFX 2还处于起步阶段,目前只有Mac的预览版本可用。 JavaFX和Apache Pivot的结果是,您可以将Web应用程序的相同代码用作桌面应用程序。