【问题标题】:Can I use a linux-based ORM from multiple languages?我可以使用多种语言的基于 linux 的 ORM 吗?
【发布时间】:2015-06-11 07:31:19
【问题描述】:

在基于 linux 的环境中运行的主要 ORM 似乎是围绕特定语言编写的。

但是,Microsoft LINQ 支持从多种语言进行访问。我可以在 linux 领域(即非 LINQ 领域、非 JVM 领域)执行此操作,例如在 Python 和 Ruby 的本机版本之间吗?

【问题讨论】:

    标签: python ruby database oop orm


    【解决方案1】:

    似乎做到这一点的唯一方法是使用共享通用 VM 的语言,例如 .NET CLR(和 LINQ)或 Java JVM(Hibernate、Eclipse Link 等)。

    因此,对于在其本机实现中运行的各种语言,答案是否定的。

    【讨论】:

      【解决方案2】:

      这个问题真的没有意义。据推测,LINQ 与任何 .NET 库一样,可用于在 CLR 中运行的任何语言:C#、VB、IronPython、IronRuby 等。

      Linux 上最常见的跨语言运行时是 Java VM,您可以在任何使用该 VM 的语言中使用 Java 库(包括 JDO 等 ORM):Java、Scala、Clojure、Jython、JRuby 等.

      【讨论】:

      • 谢谢! “在 linux 中”是指“在 linux 中且不使用 LINQ”。我不知道有什么东西可以让 Ruby 或 Python 使用这样的 Java 库。
      • 但这正是我的观点。任何 Java 库都适用于任何基于 JVM 的语言,包括 Python 和 Ruby 的 JVM 版本,即 Jython 和 JRuby。
      • 我将更新问题,注意“基于 linux”是指“语言的原生 linux 实现”。强调跨语言 ORM,而不是让多种语言在同一个 VM 上运行。谢谢!
      • 那么你的比较就更不相关了,因为(正如我在答案中指出的那样)LINQ 在多种语言上工作的原因是因为这些语言都使用相同的 VM,即 .NET CLR(常见语言运行时)。
      • 大声笑,那么我想这归结为这个问题的答案是“否”!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多