サブソニック vs.城のアクティブレコード
-
16-09-2019 - |
質問
今後のプロジェクトでは、レガシー Oracle データベースを中心に C# コードを記述する必要があります。コードのほとんどがデータ操作を扱うため、非常にデータ中心になります。ビジネス ルールはほとんどありません。そこで私は本格的な ORM を使用せず、アクティブ レコードのアプローチを選択しました。
次の 2 つの選択肢が見つかりました。 サブソニック そして 城のアクティブレコード
両方の実装の経験がある人は誰ですか?どちらかを選択する場合、どのような要素を考慮する必要がありますか?どちらがより安定していますか? より速く、より簡単に作業できますか? サポートしてくれるコミュニティが充実していますか?
決断の指針をいただければ幸いです。
解決
SubSonic と NHibernate (Castle ActiveRecord はその上に構築されています) はどちらも本格的な ORM です。
Hibernate は一般に、SubSonic よりも成熟しており、機能が豊富です。より大規模なユーザーと寄稿者のコミュニティがあります。
サブソニックは立ち上がり時間が短くなります。
以下も参照してください (詳しく読むことで必ずしも意思決定が容易になるわけではなく、実際には逆の結果になる可能性があることに注意してください)。
Hibernate の前に SubSonic を学習しますか? それともその逆ですか?
http://ayende.com/Blog/archive/2007/06/03/On-SubSonic-amp-NHibernate.aspx
http://subsonicproject.com/docs/Comparisons
一部の名前に関しては、次のものが表示されることに注意してください。Ayende Rahien は NHibernate の寄稿者であり、Rob Conery は SubSonic の寄稿者です。
Hibernate は、送信されるどんな奇妙なものにも対処できる可能性が高いため、「安全な」選択肢です。設計が正しく行われている限り、SubSonic から始めて、必要に応じて後で NHibernate に置き換えることができます (再コーディングのコストがかかります)。
最終的には状況に応じて決定し、あなた次第です。