
実証済みのアイデアの融合: S#arp Architectureの裏側
この記事では、Web開発における多数の成熟傾向と、クライアントに価値を提供することに対するそれらのメリット、およびS#arp Architecture(最善の手法と技術を活用しようとするASP.NET MVCをベースとしたフレームワーク)内でのそれらの使用について取り上げます。

この記事では、Web開発における多数の成熟傾向と、クライアントに価値を提供することに対するそれらのメリット、およびS#arp Architecture(最善の手法と技術を活用しようとするASP.NET MVCをベースとしたフレームワーク)内でのそれらの使用について取り上げます。
ORMツールであるLLBLGen Proのバージョン3.5が今週リリースされた。その中には、 Entity Frameworkへのアップデート、 NHibernateのサポート、デザイナーの改善、そしてランタイムへのいくつかのアップデートが含まれている。
S#arp Liteはより使いやすくしたS#arp Architectureだ。NHibernateを使ってデータベースに接続するためのプロジェクトテンプレートや、再利用可能なクラスライブラリ、ベースリポジトリクラス、そしてサンプルプロジェクトを含んでいる。
NHibernate 3.0 は人気 ORM の一年ぶりとなるメジャーリリースである。今回のリリースでは,CLR のバージョンが .NET 3.5 に変更されている。これに伴って QueryOver API が実現され,これまでの文字列ベースの ICriteria 式が,強く型付けされた lambda 式に置き換えられる。これはビルトインされた LINQ プロバイダの付加機能である。
NHibarnate関連で最近、NHibernate 3.0.0α1、NHibernate 3.0をサポートするNHibernate Profiler、HQL Language Service for Visual Studioなどが開発されている。
LLBLGen Proは、複数の永続化フレームワークをサポートするORMツールである:LLBLGen Pro Runtime, Entity Framework, NHibernate and LINQ to SQL。他の新しいフィーチャとしては: .NET 4.0、モデル-ファーストあるいはデータベース-ファースト開発モード、モデル ビュー、プロジェクトの検証のサポートがある。
近頃、Oren Eini氏 (別名Ayende Raheim氏)の記事をきっかけにして、NHibernate と Entity Framework 4.0というふたつの .NET のオブジェクト/リレーショナルマッピングフレームワークについて、それぞれのメリットと能力に関する議論がわき起こった。InfoQはこの議論が与えてくれる視点を理解するため、この議論の詳細に分け入った。
悲しいことに、「ORM」という言葉には、「パフォーマンス問題」がいつも付きまとう。開発者から基礎となるSQLを隠すことで、ORMは、大きな生産性の向上を提供することができる。残念ながら容易に、ばかばかしいほど悪いクエリを生成し、それを認識することもない。クロスリファレンスするストアド・プロシージャなしで、ORM用のプロファイラを使わずに問題のあるコードを見つけるのは、非常にトリッキーな方法が要る。
Fluent NHibernate プロジェクトのオーナである James Gregory 氏は,プロジェクトが 1.0 マイルストーンに到達したと発表した。同プロジェクトは現在,リリース候補(Release Candidate)の段階にある。
Ayende Rahien氏は、13のブログ投稿記事を掲載した。それらは、さまざまなNHibernateマッピングを詳細に例を交えて説明している。Ayende 氏は、NHibernateの寄稿者の1人であり、 NHibernate Profilerの作成者であり、NHibernateを何年も使用している。
Fluent NHibernateは、NHibernateでのXMLマッピング使用に代わるものである。Fluent NHibernateは、緩やかなインターフェイスを使用し、XML.の代わりにコードでマッピングの定義を可能にする。コミュニティの人によっては、 Fluent NHibernate用の文書が不足していることに不満をこぼすものもいて、その反応として、近ごろJames Gregory氏はFluent NHibernate向けの正式なWikiを発表した。