BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース NHibernate 2.0の新機能

NHibernate 2.0の新機能

ブックマーク

NHibernate(source) 2.0 Alphaが先日リリースされた。2.0のリリース(source)は、Hibernate 3.2.6の機能セットへの第一歩であり、多くのクラスが完全に書き換えられ、多くの機能が新たに追加された。

InfoQは、プロジェクトリードであるKarl Chu氏、Ayende氏(ブログ・英語)およびFabio Maulo氏と話を聞く機会があり、2.0のリリースの詳細について尋ねた。2.0での最重要変更点について、Karl氏は以下のように答えた。

1.2から2.0では、非常に多くの変更がある。1つや2つ挙げるならば、新たな継承マッピング戦略およびイベントインフラストラクチャーがそれにあたり、かなりの反響を得るものと考えている。その2つは、柔軟性が相当ある。

Ayende氏が自身のブログに、変更点や新機能についてまとめたかなり長いリスト(ブログ・英語)を掲載した。新たなイベント、アクションおよびリスナー機能の重要性の 点でKarl氏と同意見であり、「 Criteria APIでの主な改良点」(特にMulti Criteria)を追加した。それにより、「1回のDBラウンドトリップに対して、複数のクエリを実行することおよびバッチ処理クエリがある興味深いシ ナリオの実行を可能にする」。

イベント、アクションおよびリスナー機能は、「NHibernateがそのアクションを実行する方法とインターフェイスするための」手段を提供する、と Ayende氏は言う。「NHibernateが実行していることに対してさらに制御したいようなシナリオで、これは便利である」。Fabio Maulo氏によると、「NHデフォルトイベントを記述したり、無効にすることでできることは、自分自身の想像だけによって制限される」ということだ。 NHibernate氏は、イベント機能の使用方法について紹介している。たとえば、NHibernate.Validatorがイベント/リスナーを使 用したり、今後のNHibernate.SearchおよびNHibernate.Shardsがイベントを使用したり、イベントを使用して、 NHibernateをEnterpriseLibrary Validation-Application-Blockとマージするためのイベントの使用例をNHibernate AddInsが紹介している。

「Alpha」ステータスに関して、Ayende氏は以下のように説明している。

これをアルファというが、われわれの多くが稼動中にこれを使用しているので、その安定性は信頼できるものである。これがアルファである理由は、過去9ケ月 (最終リリース以後これまで)で多くの変更をおこない、シップする前に現実の経験がさらに必要であるからだ。最近の概算では最終リリースからのコード行の 変更は、およそ100000である。

多くの機能が追加されたが、「ほとんどの作業がコアで発生した」とAyende氏は言い、「Hibernate 3.2機能の移植およびNHibernateの大部分の変更をおこない、既存のHibernate 3.2コードベースに適合させた」。Fabio氏は、「NHibernate 2.0.0はHibernate 3.2.6への第一歩に過ぎない」ことを指摘し、最終的に2.1.0がギャップを埋めることになるようである。

LINQクエリのサポートについてKarl Chu氏は、「個人的には、NHibernateの継続的な成功においてNHibernate.Linqが重要な役割を果たすと信じている」と語ってい る。以下のように、Ayende氏は、Linq for NHibernate (NHibernate.Linq)サブプロジェクトについて詳しく説明している。

Linq for NHibernateは、継続中の取り組みであり、現在NHibernate 2.0 Alpha 1に対して動作するベースライン機能を備えている。 高度なシナリオが機能するよう取り組んでいる。それができたら、Linq for NHibernateをNHibernateプロジェクト(今はおそらくコントリビューションプロジェクトとして)に吸収し、NHibernateでリリースする予定である。 NHibernateが.NET 2.0に完全準拠し、Linq for NHibernateがAddOnになることに注意したい。

NHibernate 2.xのロードマップは「Hibernate 3.2にすべての機能を装備することである。それは、決して不可能なことではない」とKarl Chu氏は主張する。

Juli Lerman氏(ブログ・英語)は、NHibernate 2.0 Alpha(ブログ・英語)について書き、 Entity Frameworkとの関係および Entity Frameworkへの位置決めに関して、「EFの道のりはまだまだ長く、 当面の間、NHibernateはますます強化され続ける」ことを指摘している。

原文はこちらです:http://www.infoq.com/news/2008/04/nhibernate-200-alpha

この記事に星をつける

おすすめ度
スタイル

BT