代码之家  ›  专栏  ›  技术社区  ›  nportelli

您如何决定使用哪个ORM?

  •  1
  • nportelli  · 技术社区  · 16 年前

    城堡活动记录? 纯NHiberinate? 亚音速? 实体? 像荨麻?

    我想用一个,但我不知道怎么决定。NHiberinate似乎杀伤力过大且复杂,但被广泛使用。亚音速似乎整洁和容易。但它是稳定的吗?我有一个程序员,我被指给了nettier,它看起来也很整洁,但也很复杂。其他人如何评估和决定使用什么?你有没有做一些简单的小项目,让每个项目都能看到这些特性?Eeeny,Meenie,Miney,Moe?

    4 回复  |  直到 13 年前
        1
  •  1
  •   SteveB    16 年前

    我也更喜欢NHibernate,并且同意如果你花点精力去学习它,你会发现它并不像最初看起来那么复杂。你不需要知道它的所有特性就可以走很远的路。

    但是,您应该总是为手头的工作选择合适的工具。如果你正在构建一个应用程序,它有接近真正的领域模型的东西,那么nhibernate将是IMO的自动选择。您提到的其他对象不是真正的对象关系映射器,而是代码生成器。这本身并不一定是坏事,但您必须评估一种方法何时比另一种方法更合适。

        2
  •  2
  •   jonnii    16 年前

    我喜欢NHibernate。事实上,它并没有那么复杂,它的灵活性令人惊讶,而且它不会用属性和其他不应该存在的时髦的东西污染对象模型。

    我发现活动记录模式不太适合于静态类型的语言,比如C,就像域模式一样,因为它会使模拟变得更复杂。

        3
  •  0
  •   s3v1    16 年前

    既然问题是“我该怎么选”,而不是“我该选什么”…:

    我先挑一个最容易用的。 然后我会研究一下谷歌,看看它是否稳定。 然后我会用一些多线程的优点和一个具有不同类型关系和继承的域结构对它进行测试。

    你也可以从 http://polepos.sourceforge.net/ 这是一个数据库性能基准,但主要用于Java框架。如果你愿意的话,你可以将源代码修改为.NET,它不会非常复杂。

    也就是说,我现在最喜欢的是ActiveRecord和Linq。

        4
  •  0
  •   Rad    16 年前

    我想最好的决定方法 哪一个 尝试找到一个常见的问题,在您评估的表单中有解决方案。你会得到关于编程范式、风格、代码数量、复杂性等方面的想法。

    推荐文章