跨平台逻辑引擎的最佳语言?

时间:2011-10-17 14:44:47

标签: cross-platform

我需要为应用程序编写逻辑引擎。从本质上讲,这件事将在XML文件中提供一堆数据,然后它会处理该数据并生成一个XML文件作为其结果。

诀窍是这个引擎需要在服务器上运行(可能是Windows,可能作为后台服务)并且它将需要在移动设备上 - 主要是iOS和Android。

逻辑不是那么困难或复杂。在移动设备上,我们的想法是让研究人员快速而肮脏地访问引擎以获取非常小的数据集。服务器“version”将完成相同的工作,但是在大型数据集上执行。

GUI将从此逻辑引擎中抽象出来。

我应该指出,“移动版本”应该能够脱机工作 - 这意味着无论我选择实现这个逻辑引擎,它都需要在设备上本机运行。这就是说,它可以在移动设备的本地Web浏览器中以本地存储的文件运行。例如,我最初考虑使用JavaScript - 除了我认为没有办法在服务器端的多线程服务中运行JavaScript。

是否有一种语言可以提供此功能?平台之间至少重新编码?

3 个答案:

答案 0 :(得分:1)

您可以使用Rhino从Java服务器/ servlet内部执行JavaScript。我不确定引擎是如何并行/线程的。您还可以查看托管Google V8,这可能会提高性能/扩展性。

答案 1 :(得分:0)

我认为你不能用一种语言完成所有这些(你可能会,但它不会很漂亮)。

答案 2 :(得分:0)

Java(或其他JVM语言,如Scala,Clojure或Groovy)是您可以做的最接近的:它是允许编译代码在最大范围的平台上保持不变的单一平台。

但是我不确定iOS上的Java支持有多好 - 这可能是一个棘手的问题。但无论如何这都是一个问题:苹果似乎并不特别热衷于鼓励他们自己的工具以外的任何东西。

也许最好的策略是用Java编写(它将覆盖你的服务器和95%的客户端平台)然后有一个小的客户端部分,你可以快速移植到像iOS这样的特殊情况。