代码之家  ›  专栏  ›  技术社区  ›  Joe Cannatti

简单的跨平台GUI应用程序

  •  2
  • Joe Cannatti  · 技术社区  · 14 年前

    我想知道是否有任何方法可以建立一个非常 简单的GUI应用程序 (它甚至不必看起来很好)可以在新安装的 Windows Vista和OS X 具有 用户不需要其他安装 . 我宁愿不使用Java(只是出于个人编程偏好)。如果这是唯一的方法,我会用它。具体来说,我想知道是否可以用 Scala或Groovy 在Windows上运行而不需要安装任何东西。对不起,如果这是一个愚蠢的问题,我是一个obj-c开发人员的贸易。

    7 回复  |  直到 14 年前
        1
  •  4
  •   Rex Kerr    14 年前

    您可以将Scala JAR打包到您自己的系统中,只要Java被安装(它通常是在Vista或OS X的第三方供应商安装上),就应该工作。如果使用JavaWebSstart,除了Java本身之外不需要安装。另外,如果要安装自己的代码,为什么不沿着scala jars复制呢?

    如果你真的是指一个新的安装——除了操作系统提供的以外什么都没有——那么不,我不这么认为。

    编辑:浏览器上始终有javascript。我想这不能满足你的要求吗?

        2
  •  3
  •   luis.espinal    14 年前

    如果你真的,真的不想安装任何东西(或者在你的应用程序中携带任何东西),那么就把这个应用程序写成一个web应用程序(可能是一个javascript应用程序)。然后,任何用户都可以使用合适的浏览器从任何机器上运行该UI。但是,这就需要 在某处托管应用程序。

    如果这不是一个选项,您可以将您的应用程序开发为一个包含自包含的、可自我修改的javascript应用程序(如 TiddlyWiki 我经常使用)。然后,用户可以下载到他的机器上,将浏览器指向它,然后就可以使用Voila了。

    如果您将javascript与HTML5结合在一起(并且假设用户拥有类似Safari的HTML5兼容浏览器),那么您的应用程序可以使用localstorage将其状态保存在用户的计算机中(因此,不需要再进行自我修改以将状态保存为tiddlywiki所做的那样)。

    但这将打破你不在用户主机上下载任何东西的规则。由于每个操作系统都实现了自己的一组应用程序库,这是一个鸡毛蒜皮的问题,没有解决方案。对于多平台支持,您 必须 使用一个抽象出操作系统之间差异的层,无论是VM(如JVM、Ruby或Mono)还是一组库(qt、gnome)。

        3
  •  1
  •   n535    14 年前

    据我所知,你不能用 用户不需要其他安装。 如果违反此限制,Mono(带GTK)是一个不错的选择。

        4
  •  1
  •   Ken Liu    14 年前

    Scala和Groovy将拥有与Java相同的部署问题,所有这些都需要安装JVM。通常,您必须首先安装JVM(Windows不包括它),然后安装您的程序。然而,Java包含在OS X中。

    可以使用ruby或python以及其中一个跨平台库(如wxwidgets),并将其编译为包含整个运行库集(如ruby和python的所有库)的可执行文件。

        5
  •  1
  •   Paul Lefebvre    14 年前

    真正的工作室(正式的realbasic)当然满足这个要求。它创建的本机应用程序不依赖于OS X和Windows(以及Linux)。

        6
  •  0
  •   Kico Lobo    14 年前

    理论上,您可以使用Mono编写一个.NET应用程序,它应该在安装了.NET运行时环境的任何其他应用程序上运行而不会出现问题。

    但我不确定它是否能在实践中起作用。

        7
  •  0
  •   Community basarat    7 年前

    我在Xulrunner上取得了一些成功

    我问的这些问题也有一些建议

    Building Cross Platform app - recommendation

    Building XUL app a-la SongBird

    一旦你进入Xulrunner是相当酷的,但一开始它有点混乱(我想)。不过,Mozilla Google小组的人真的很好,也很有帮助!