8

ORMの使用を検討しており、意見/比較が必要でした

ORM の基本的な基準は次のとおりです: 使いやすい/構成しやすい (学習曲線が短い)、柔軟性がある、それを抽象化できる、維持しやすい

これは、私たちが見ているORMと、最初の印象のリストです。

  1. オープン アクセス - 単純なものは非常に簡単に思えますが、柔軟性があまりないようです。コストは問題ではなく、既に所有しています。
  2. Ling to SQL - 使用と設定は非常に簡単に見えますが、いくつかの機能がありません
  3. Active Record - NHibernate をシンプルに
  4. SubSonic - 非常に機能が豊富に見えますが、実際にはあまり遊んでいません

ここに、私たちが調べて除外したORMがあります

  1. エンティティはまだベータ版です
  2. NHibernate には学習曲線がかなりあります (学習するのに 3 週間もかかりません)。
4

7 に答える 7

6

DataObjects.NET ( http://www.x-tensive.com ) をご覧ください。機能が豊富で、かなり使いやすいです。ただし、オブジェクト モデルの外観に基づいてデータベース構造を決定するため、オブジェクト モデルに完全に結び付けられます。そうは言っても、データベースの存在を無視できるようにしたい場合は、非常に便利です。私たちは何年もそれを使用しており、大きな成功を収めています。

于 2009-05-04T16:45:24.303 に答える
4

現在、SubSonic (2.0.3) を使用していますが、これは絶対的な命の恩人です。それがどれほど素晴らしいかは強調しきれません。ただし、現在、さまざまな理由で (おそらく NHibernate または Entity に) 切り替えることを検討しています。これが私の長所と短所です。

長所:

  • セットアップと使用は非常に簡単です。
  • 優れた便利なツールと機能がたくさん
  • 「構成よりも規約」の哲学を使用しているため、構成はほとんどありません。それは「ただ働く」だけです。(あなたが望むように物事を行う限り... :) )

短所:

  • データベースの設計は、ドメインの設計と密接に結びついています。DB を変更すると、コード/ドメインの設計を変更する必要があります。
  • デフォルトでは、SubSonic はすべてのデータ アクセスに、Repository パターンではなく ActiveRecord パターンを使用するため、「抽象化する」ことがより困難になります。(ただし、v3.0 では、デフォルトの ActiveRecord テンプレートを交換してリポジトリ パターンを使用できると思います)。
  • SubSonic の将来について、多くの悲観的な噂が飛び交っています。しかし、噂はあくまでも噂です。
于 2009-02-19T18:06:10.300 に答える
3

対になったすべてのペニーに対して、価値があるかもしれません:

選択した ORM (どちらを選択しても) を学習するのに今 3 週間ない場合は、後でそれを学習するために 3 週間を見つけなければならない可能性があります。

適度に複雑なモデルがある場合、ORM は自明ではありません。ORM がどのように機能するかを知る必要が生じるため、必要な方法で物事をマッピングするように ORM に指示できます。

もちろん、これは「ツールを知っている」という別の言い方です。:)

于 2009-02-19T17:41:42.917 に答える
1

T4 テンプレートを使用して独自のテンプレートを作成します。特に T4 テンプレート用に、インターネット上で利用可能ないくつかの確立されたパターンがあります。また、T4 の知識があれば、マクロよりも範囲が広い項目をスクリプト化することもできますが、必要なスクリプトを生成するカスタム アプリを作成するよりは範囲が狭くなります。お役に立てれば!

于 2010-07-06T06:07:50.193 に答える
1

ほとんどの人は、それらのうちの 1 つまたは 2 つを少ししか経験していませんが、すべてに触れている人はほとんどいません。それぞれのお気に入りで概念実証を行うことをお勧めします。ORM ツールごとにn時間を超えないように、それぞれ 1 つのセットアップを取得します ( n = 適切な時間を決定します)。オブジェクト モデル全体を実装する必要はありません。機能的なサブセットで十分です。

作業が完了するまでに、セットアップとそれらすべての使用方法について作業したことになります。その後、事後分析を作成し、チームは機能に対する問題の比率が最も優れているものを決定できます。

于 2009-02-19T17:46:08.863 に答える
0

私はBryCoBatに非常に同意します(賛成)。また、もしあなたがすでに Open Access を所有しているなら、会社のどこかにすでにオープンアクセスに慣れている人がいる可能性が非常に高いということも付け加えたいと思います。言い換えれば、あなたが知っているものを使用してください。

于 2009-02-19T17:52:11.300 に答える