give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

NHibernate

O/Rマッピングツールに対する誤解をときたい -実装編 Part9-

Part8を読む これまでのまとめ 当初考えていた以上に長いシリーズとなってしまったので、一度全体を振り返ってみます。 また、その後でO/Rマッピングツールを採用するかどうかの判断基準や考慮点、アンチパターンなんかも書いてみたいと思います。 これまで…

O/Rマッピングツールに対する誤解をときたい -実装編 Part8-

Part7を読む NHibernateに関する補足説明 できればサンプルプログラムを1から10まで説明していきたいのですが、そうするとボリュームが凄いことになってしまうので、注目すべき部分のみをピックアップしてみたいと思います。 Lazy Loading機能 Lazy Loading…

O/Rマッピングツールに対する誤解をときたい -実装編 Part7-

Part6を読む データベース関連の説明 Part1でもお話しした通り、ここまで「あ・え・て」データベース関連の説明をしてきませんでした。 なぜならO/Rマッピングツールは SQLを書きたくない人のためのツールではない からです。 そうではなく、O/Rマッピングツ…

O/Rマッピングツールに対する誤解をときたい -実装編 Part6-

Part5を読む NHibernateの利用を簡略化するヘルパークラス(NHibernateHelper.cs) 書籍Facadeの説明をする前にヘルパークラスの説明をしたいと思います。 実装コードの全体を載せる前にまずはクラスのAPIから紹介します。 namespace Junichi.Ito.NHibernateBo…

O/Rマッピングツールに対する誤解をときたい -実装編 Part5-

Part4を読む Facadeクラスの実装 次はFacadeクラスの実装です。 実はO/Rマッピングツールの説明をすると言っておきながら、ここまでほとんどO/Rマッピングツールに関するコードが登場していませんでした。 ここからようやくNHibernateを使ったコードが登場し…

O/Rマッピングツールに対する誤解をときたい -実装編 Part4-

Part3を読む ドメインモデルクラス それではここからドメインモデルを構成する注文クラス、注文明細クラス、書籍クラス、和書クラス、洋書クラスを説明していきます。 注文クラス(BookOrder.cs) using System; using System.Collections.Generic; using Syst…

O/Rマッピングツールに対する誤解をときたい -実装編 Part3-

Part2を読む 実装コード それではここからいよいよ実装コードの説明を進めていきます。 書籍注文ページを実装するには以下のようなクラスやファイルが必要になってきます。 書籍注文ページのUI(aspx + aspx.cs) ドメインモデルを構成する注文クラス、注文明…

O/Rマッピングツールに対する誤解をときたい -実装編 Part2-

Part1を読む プログラム設計 クラス設計 このプログラムの核となるクラス(ドメインモデル)を以下に示します。 この図はER図でもなく、テーブル設計図ではありません。 あくまでクラス図です。 基本的にこれがこのままC#のコードとして実装されます。 しかし…

O/Rマッピングツールに対する誤解をときたい -実装編 Part1-

2010.12.28追記 Part9にて、実装編Part1〜Part8の概要を載せています。 かなり長いシリーズ記事なので、この記事を初めて読む方はまずこちらに目を通してもらうと全体像が分かりやすいかもしれません。 イントロダクション 以前からやりたいやりたいと思いな…