使用JRuby和Swing进行跨平台开发 - 编程入门网
使用JRuby和Swing进行跨平台开发时间:2011-11-29 IBM developerworks James Britt使用 Monkeybars JRuby Swing 库快速开发桌面应用程序 使用 Ruby 除了可以构建 Web 和控制台应用程序外,还可以编写复杂的 GUI 桌面应用程序,这些桌 面应用程序可以不作修改地在多种平台上运行。得益于 JRuby,Ruby 的传统 C 实现的健壮替代品,Ruby GUI 工具包可以使用用于 Java 平台的 UI 工具。本文介绍一个用 JRuby 和 Swing 构建应用程序的库 Monkeybars,并讲解一个示例应用程序。 Ruby 目前被作为一种用于构建 Web 应用程序的编程语言而 著称,主要通过 Ruby on Rails 框架使用。但是,这种语言还可以用于开发图形化桌面应用程序。在本 文中,您将学习更多关于使用 Ruby 进行桌面应用程序开发的知识,并完成一个详细的示例,这个示例使 用 Monkeybars — 一个基于 Swing 和 JRuby 的开源库 — 创建一个 GUI 桌面应用程序。 面向桌面的 Ruby 标准的 Ruby 发行版包括用于 Tk 绑定的代码,Tk 是一组开源的、跨平 台部件集,用于创建图形化桌面应用程序。这可以带来很大的方便。但是,在从源代码安装 Ruby 时,应 确认同时还有 Tk 依赖关系,并确保编译设置包括 Tk。如果在 Windows® 上使用方便的 “一 键式(one-click)” 安装程序包安装 Ruby,那么仍然需要采取额外步骤使 Tk 工作,因为它不再 支持自动安装。 即使为 Ruby 设置了 Tk,它仍然有点沉闷。在某些目标平台上,它们看上去相当 丑陋。而且,创建复杂的接口令人生畏。Tk 最适合用于较小的 GUI 需求。 可用工具包 Tk 的这些弱点促使了其他面向 Ruby 的 GUI 工具包选项的开发(请参阅 参考资料 查看相关链接)。有些 值得注意的选择是: FxRuby:FxRuby 是用于 Fox 的 Ruby 绑定,这是一个用 C 编写的 GUI 工 具包。它可用于使用 RubyGems 的安装。对于 Windows,有一个二进制 gem;用于其他平台的 gem 则需 要编译本地代码。 WxRuby: WxRuby 是用于跨平台 wxWidgets C++ GUI 工具包的一个绑定,通过 它可以创建拥有本地外观的桌面应用程序。它可用于使用 gem 的安装。 QtRuby:QtRuby 提供对 Qt 工具包(在 KDE 桌面系统中使用的工具包)的 Ruby 绑定。对于 Windows 安装,有一个 gem,但是 对于其他平台则只有源代码。 GTK-Ruby:GTK 是在 GNOME 中使用的 UI 工具包。要使之运行,需 要编译本地代码。 Shoes:Shoes 是最近出现的一个与 Ruby GUI 部件有关的工具包。与这份列表 中提到的其他工具包不同的是,它是专门为 Ruby 设计的。可以使用特定于平台的安装程序来安装它。 Swing:Swing?是的,正是这个与每个 Java 运行时环境捆绑的 GUI 库。如果您运行 JRuby,那 么可以使用 Swing。 除了其中一个外,所有这些都是用 C 或 C++ 编写的 GUI 或部件库,它们都 有相应的绑定,以允许在其他语言,例如 Ruby、Python 和 Perl 中调用它们。在几乎所有情况下,您都 要面对多种考虑,例如安装和发行。 使用JRuby和Swing进行跨平台开发(2)时间:2011-11-29 IBM developerworks James Britt如何选择 GUI 库 当然,选择使用哪个 GUI 工具集取 决于您的特定需要。需要考虑以下内容: 一套丰富的部件或组件 可靠的实现 在多 种平台上的可用性(主要是 Macintosh、Win32、KDE 和 GNOME) 在托管平台上的本地感观 是否受到积极的维护 易于创建定制的部件 未受限的许可 可接受的成本 可用于加快开发的已有的框架和库 成熟的 IDE 和窗体布局工具 测试工具和框架 易于打包和部署 如果只需偶尔抛出消息框,或者请求用户进行某些简单的输入,那么前面 列出的所有工具包都适用。对于简单的需求,只需重点考虑平台可用性、适合的部件以及适 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |