【问题标题】:Rich and widely used Ruby GUI framework for Windows?适用于 Windows 的丰富且广泛使用的 Ruby GUI 框架?
【发布时间】:2010-11-11 10:09:02
【问题描述】:

我读过关于 wxRuby 和 Shoes 的文章,但从未使用过它们。我想通过开发一个真实的 Windows 应用程序来学习 ruby​​。在可用的框架中,哪一个被广泛使用和接受、库丰富并且捆绑了 .exe builder?

【问题讨论】:

  • 你的意思是图形用户界面。但是大多数严肃的应用程序没有它,也不需要wxRuby 和Shoes。无论如何,Qt for Ruby 有一些工具包可以轻松进行 GUI 投影。
  • @Nakilon:是的,我的意思是 GUI。我刚刚找到了另一个,它是 FxRuby。这个怎么样?

标签: ruby windows user-interface frameworks


【解决方案1】:

目前 Ruby 中的客户端/桌面应用程序没有很多明智的选择,但我相信您最好的选择之一是通过 JRuby 来利用成熟的 JVM 库。

Redcar text editor 是用 Ruby 编写的,运行在 JVM 上,你可以在这里查看 Github 上的源代码https://github.com/danlucraft/redcar

还有一家名为 Atomic Object 的开发公司使用 JRuby 制作了一个简洁的 Ruby 桌面应用程序,具有相当复杂的 GUI,您可以查看 here

在过去的几个月里,我一直在考虑和你完全相同的问题,并密切关注我的选择:-)

我也一直在服务器端使用 JRuby,它非常可靠。

最后,如果它像你说的那样仅适用于 Windows,那么你可以考虑使用像 WPF 这样的 .NET GUI 框架并使用 IronRuby 构建它,但是 IronRuby 还没有 JRuby 成熟,所以你可能会暴露自己在兼容性、错误和性能方面存在一些风险(我喜欢 IronRuby!)。

但是,使用 IronRuby 的潜在问题可能会被您使用为 Windows 设计和优化且比 Swing 更好的 GUI 框架所获得的收益所抵消。 WPF 与 Windows 上的 GUI 框架一样丰富。

【讨论】:

  • @Nakilon 我相信你,但在这里获得一些平衡的数据是公平的,所以我要反驳你的观察:我有一台 2009 MacBook Pro,它启动了当前版本Redcar 在 12 秒内。不是“天哪,真棒”,但可以接受。我并不是说你不需要更多资源——例如,你肯定需要比原生应用程序更多的 RAM,但它完全可用。除了启动时间之外,还有更多需要考虑的因素——一旦应用程序启动并运行,成熟的 JVM 垃圾收集器对于 Ruby 应用程序来说是一个很大的好处。不过,现在 Redcar 在 Windows 上的运行效果并不好。
  • 12 秒对于类似 SciTE/Textmate 的编辑器来说太长了。甚至像 Visual Studio 这样功能更强大的 IDE 也更容易工作。我不喜欢只为软件购买新的 RAM,这更像是记事本,而不是 VS。
  • 哦,伙计们,如果 RAM 是因素,那就去使用普通的老式 C GUI 编程吧。今天(也是 2010 年),即使是 Android 开发人员也很少考虑内存。开始时间是一个优化问题 - vm 参数 - 除非您需要 1 秒内开始的图像查看器或其他任何东西。加入成熟的 (Java/JVM) 和灵活的 (Ruby) 技术为您提供了巨大的可能性,更不用说可移植性、书籍、庞大的社区和员工可用性 - 严肃的软件不仅仅是技术的选择。
【解决方案2】:

GitHub 上有 Qt 的绑定。我相信它是来自 KDE 的 Korundum 绑定的一个分支。但是,我还没有在 Windows 上尝试过。

【讨论】:

    【解决方案3】:

    您可以考虑使用 RubyTk。 Tk 是一个工具包,适用于包括 ruby​​ 在内的多种语言。欲了解更多信息,请参阅tkdocs.com

    免责声明:我不知道它的使用范围有多广,尽管 Tk 通常在许多地方用于商业、内部和开源项目。

    【讨论】:

      【解决方案4】:

      http://en.wikibooks.org/wiki/Ruby_Programming/GUI_Toolkit_Modules 会有所帮助

      就受欢迎程度而言,2008 年鞋类最受欢迎,但可能已经下降。

      http://www.pressure.to/ruby_gui_survey/

      【讨论】:

        【解决方案5】:

        自从 RubyInstaller project 捆绑现在 complete modern Tk distribution and bindings 消除了 Windows 安装问题 - Tk 似乎是要走的路。

        【讨论】:

          【解决方案6】:

          使用 RubyGems,我相信现在可以为此安装 GTK+。宝石中的this 也是如此。这是一个广泛使用的框架,在开源和工业中都是如此。它在GIMP 中使用,并且我认为它提供了一个接近原生且易于使用的优秀 Windows 系统。

          【讨论】:

            猜你喜欢
            • 2010-09-06
            • 1970-01-01
            • 2010-10-08
            • 2013-01-24
            • 2011-06-15
            • 1970-01-01
            • 1970-01-01
            • 2011-09-12
            • 2010-11-18
            相关资源
            最近更新 更多