【发布时间】:2013-09-02 09:36:38
【问题描述】:
作为一个实验,我正在为 Java 应用程序(客户端服务器、P2P 等)开发一个小型平台,我希望能够在 Java 和 Scala 中使用它。也可能来自 Groovy、jRuby 等。
我知道 Scala 可以轻松地调用 Java,但 Java 不能轻松地回调 Scala。我不知道这在 jRuby 和 Groovy 中是如何工作的。
我最初的想法是用 Java 实现这个平台,然后看看我是否可以将它提供给其他语言。但是,平台可能包括启动线程,这些线程调用实现某些 Java 接口的组件。是否有可能通过例如一个在 Scala 中实现的工厂,但它实现了一个 Java 接口到一个 Java 组件,并让该 Java 组件调用 Scala 工厂?
对于实施这样一个跨语言平台,您一般有什么建议?
【问题讨论】:
-
你描述的方式(java core + per-language api)就是vert.x的方式
-
也许你可以让你的应用程序语言中立,作为一个工作的 HTTP(或其他通用协议)服务器。然后任何可以想象的东西都可以使用它,例如使用 JSON,这样对象在那时是相当普遍的。
-
它将有一个 HTTP / TCP 接口。但是您需要在平台内运行组件——例如 servlet 或 PHP 页面。类似的东西。
标签: java scala grails groovy jruby