「Fluent NHibernate」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
imported>Fallout New Tokyo
 
1行目: 1行目:
'''Fluent NHibernate'''(ふるーえんと・えぬはいばねーと)とは、[[.NET Framework]]向けの[[ORM]]のひとつである[[NHibernate]]の[[ラッパーライブラリ]]である。
+
'''Fluent NHibernate'''(読み:ふるーえんと・えぬはいばねーと)とは、[[.NET Framework]]向けの[[ORM]]のひとつである[[NHibernate]]の[[ラッパーライブラリ]]である。
  
 
== 概要 ==
 
== 概要 ==
9行目: 9行目:
 
* [[ボクらのScala ~ 次世代Java徹底入門]]
 
* [[ボクらのScala ~ 次世代Java徹底入門]]
  
[[Hibernate]]および[[NHibernate]]は、よく[[Ruby]]界隈で圧倒的な勢力をもつ[[ActiveRecord]]と比較され、多くの場面でボロクソに言われているのが実情である。
+
[[Hibernate]]および[[NHibernate]]は、よく[[Ruby]]界隈で圧倒的な勢力をもつ[[ActiveRecord]]と比較され、多くの場面でボロクソに言われているのが実情である。しかも、その話題が過熱しすぎると[[ORM]]単体どころか[[Java]]は[[プログラミング言語]]としても劣っている云々という話に飛躍するくらい酷い有様である。
しかも、その話題が過熱しすぎると[[ORM]]単体どころか[[Java]]は[[プログラミング言語]]としても劣っている云々という話に飛躍するくらい酷い有様である。
 
  
 
そこへ颯爽と登場したのが、指摘されていた問題点を[[C Sharp|C#]]の変態機能を使いまくることで解決しまくった「さくさくハイバネート」である。
 
そこへ颯爽と登場したのが、指摘されていた問題点を[[C Sharp|C#]]の変態機能を使いまくることで解決しまくった「さくさくハイバネート」である。
32行目: 31行目:
  
  
なお、クエリーなどの部分はほぼ[[NHibernate]]そのものを使うことになる。
+
なお、[[クエリ]]などの部分はほぼ[[NHibernate]]そのものを使うことになる。
 
よってそれらの使い方は「[[NHibernate]]」の項目を参照。
 
よってそれらの使い方は「[[NHibernate]]」の項目を参照。
  
45行目: 44行目:
  
 
== 参考文献 ==
 
== 参考文献 ==
<references/>
+
{{reflist}}
  
 
== 外部リンク ==
 
== 外部リンク ==

2014年3月3日 (月) 05:46時点における最新版

Fluent NHibernate(読み:ふるーえんと・えぬはいばねーと)とは、.NET Framework向けのORMのひとつであるNHibernateラッパーライブラリである。

概要[編集 | ソースを編集]

Fluentは日本語で「流暢な」や「さくさく」という意味であり、直訳すると「さくさくハイバネート」となる。 似たような言い回しには以下のようなものがある。

HibernateおよびNHibernateは、よくRuby界隈で圧倒的な勢力をもつActiveRecordと比較され、多くの場面でボロクソに言われているのが実情である。しかも、その話題が過熱しすぎるとORM単体どころかJavaプログラミング言語としても劣っている云々という話に飛躍するくらい酷い有様である。

そこへ颯爽と登場したのが、指摘されていた問題点をC#の変態機能を使いまくることで解決しまくった「さくさくハイバネート」である。

特徴[編集 | ソースを編集]

NHibernateではデータベースの接続設定やマッピングを記述するのにXMLを用いる。一方、Fluent NHibernateではXMLの代わりにC#ソースコードでそれらを記述する。

XMLではなくC#ソースコードとして記述することで、実行時にXMLを動的に解析するのに比べ、実行前にコンパイラによる最低限の記述ミスのチェックを行え、より安全性が高まるという利点がある。

また、Visual StudioMonoDevelopなどの統合開発環境を使用することでインテリセンスなどの入力補完なども使えるため、シンタックスエラーなどの些細な記述ミスによるバグを抑制することができる。

さらにFluent NHibernateでは、Rubyなどでよく使われるActive Recordのようにマッピングクラスに基づき、それらに対応するデータベース上のテーブルの自動生成するオートマッピング機能を備えている。Fluent NHibernateのオートマッピング機能では、マッピングクラスを個別に明示し生成することも、.NET Frameworkアセンブリを指定することで、そのアセンブリの中で使われているマッピングクラスを自動認識させ、そこから一気に自動生成を行うこともできるようになっている。

インストール[編集 | ソースを編集]

Visual Studioを用いている場合はNuGetを使うことで、Fluent NHibernateおよびNHibernateなどの依存するその他のライブラリも一括でインストールできるので便利である。[1]

使い方[編集 | ソースを編集]


なお、クエリなどの部分はほぼNHibernateそのものを使うことになる。 よってそれらの使い方は「NHibernate」の項目を参照。


便利ツール[編集 | ソースを編集]

  • Visual NHibernate - ER図などを用いてビジュアルにマッピングを書ける商用ソフト。

関連項目[編集 | ソースを編集]

参考文献[編集 | ソースを編集]

外部リンク[編集 | ソースを編集]