【发布时间】:2010-09-10 23:34:59
【问题描述】:
我可以使用哪些库来为 Erlang 应用程序构建 GUI?请每个答案选择一个。
【问题讨论】:
-
看看会有什么反应会很有趣 - 不幸的是,erlang 并不是最流行的语言之一。
标签: user-interface erlang
我可以使用哪些库来为 Erlang 应用程序构建 GUI?请每个答案选择一个。
【问题讨论】:
标签: user-interface erlang
有用于构建前端的新兴 Scenic 库。它具有的特定于 erlang 的方法看起来很有希望。
【讨论】:
对于为 Erlang 编写原生 GUI,wxErlang 似乎是当今最成熟的库(也在 SourceForge 上)。
【讨论】:
我将违反“每个帖子一个选项”的要求 - 抱歉,使用哪种工具实际上取决于您的优先级。
一个相当稳定的库是gtkNode。它使用一种简单但强大的方式将所有 GTK 小部件映射到 Erlang,并且应该在各个版本中保持稳定。它也适用于 Glade GUI 构建器。它由 Erlang 大师 Mats Cronqvist 积极维护,但当然是尽力而为。
WxWidgets 很有前途,有望成为 Erlang 的主要 GUI 库,但它仍处于测试阶段,界面还不稳定,也没有承诺向后兼容。
因此,如果您想走在最前沿,WxWidgets 可能是您的理想之选。否则,gtkNode 应该为您提供一个相对容易和安全的漂亮 GUI。
唯一官方支持的 Erlang GUI 库是 GS,它是 OTP 版本的一部分,并保证与即将发布的版本一起使用。因此,如果这比原生外观和现代外观更重要,那么它可能是一种选择。
【讨论】:
我已经在http://wxerlang.dougedmunds.com发布了一个 wxErlang 教程
【讨论】:
对于 Erlang 中的 GUI 应用程序,您应该使用 r13b 版本中包含的 wxErlang。 Beta 版的源代码已经存在了一段时间,但现在,自 r13a 以来,它已包含在主要的 OTP 版本中。
【讨论】:
我发现有人想用 Erlang 以外的东西为 Erlang 程序编写 GUI 有点令人费解? Erlang 的并发模型使其成为编写 GUI 的优秀语言。UI 元素和事件完美地映射到 Erlang 进程和消息。
【讨论】:
大多数人不会在 Erlang 中编写实际的 GUI。更常见的方法是用 Java 或 C# 编写 GUI 层,然后通过套接字或管道与您的 Erlang 应用程序通信。
考虑到这一点,您可能想要研究各种库以在 java 或 .Net 应用程序和 Erlang 之间进行 RPC:
http://weblogs.asp.net/nleghari/archive/2008/01/08/integrating-net-and-erlang-using-otp-net.aspx
http://www.theserverside.com/tt/articles/article.tss?l=IntegratingJavaandErlang
编辑如果你真的打算在 erlang 中编写一个界面,你可能会考虑做一个通过 Yaws 提供的基于 web 的 GUI,erlang 网络服务器: http://yaws.hyber.org/appmods.yaws
【讨论】: