More Related Content
PPTX
PPTX
PDF
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring PDF
Programming camp code reading PDF
PDF
20131209_buildinsidermeetup PDF
Base DDD(ドメイン駆動設計) 参考文献を巡る旅 PPTX
What's hot
PDF
PPT
PPTX
2015-12-16 某S社、出直しDDDってるってよ PDF
PPTX
A critique of ansi sql isolation levels 解説公開用 PDF
2014.03.19 linux joshi_security_public PDF
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話 PDF
PDF
名著『リーダブルコード』を解説者と一緒に読み解こう - 7章 制御フローを読みやすくする KEY
PDF
ceph acceleration and storage architecture Similar to 20100324 勉強会資料(ドメイン駆動)
PPTX
Implementing Domain-Driven Design: Part 1 PDF
PDF
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜 PPT
PPTX
NS study8 DDD Microservices Azuer Service Fabric PDF
PDF
PDF
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~ PDF
PDF
PDF
PDF
DDDはオブジェクト指向を利用してどのようにメンテナブルなコードを書くか PDF
設計/ドメイン設計(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第23回】 PPTX
Relationship betweenddd and mvc PDF
SCENARIOS, STORIES, USE CASES 10章 PDF
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】 PPTX
PDF
DDD 20121106 SEA Forum November PPTX
PDF
実装(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第31回】 20100324 勉強会資料(ドメイン駆動)
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
本の目次
序章 橋渡し
第一部 背景
第1章 尊重すべき価値
第2章 パターン入門 DDDの前提となる思考方法と道具
第3章 TDDとリファクタリング
第二部 DDDの応用
第4章 新しいデフォルトアーキテクチャ
第5章 DDDの手法で前進する サンプルアプリケーションを
第6章 インフラのための準備 テスト駆動で深堀り
第7章 ルールを機能させる
第三部 PoEAAの応用
第8章 永続記憶のためのインフラ
POEAAとの連携
第9章 NHibernateを導入する
第四部 次は何か
第10章 これからの設計テクニック
第11章 UIにフォーカス おまけ(筆者の友人が書いたもの)
第五部 付録
付録A 他のドメインモデルスタイル
付録B 論じたパターンのカタログ 19
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
第6章 インフラのための準備
・ライフスタイルとしてのPOCO
・POCO…Plain OldCLR Object (POJOの.NET版)
・FowlerはPI(Persistence Ignorance)という
表現を使用
・PIかどうかを見分けるには、
「ドメインモデルにインフラ関連の外部DLLに関する参照が含ま
れているかどうか」を確認するのがはやい
(例)O/RマッパーとしてNHibernateを使用している場合、
nhibernate.dllに対する参照がドメインモデルのコードに含まれて
いたら、不吉なにおい
参考: Visual Studio 2010 EF4 POCO Part1
http://blogs.msdn.com/daisukei/archive/2009/06/02/visual-studio-2010-ef4-poco-part1.aspx
Entity Framework POCO Template for .NET 3.5 : Don't Be Iffy
http://thedatafarm.com/blog/data-access/entity-framework-poco-template-for-net-3-5/
33
- 34.
- 35.
第6章 インフラのための準備
・以下のようなものは不吉なにおい
1.特定の基底クラス(object以外)の継承:
ドメインモデル開発後、永続記憶に対応しようとしたときに、継承が要求されてドメイン
モデルを変更しなければならないリスク
2.与えられたファクトリだけでインスタンス生成:
ファクトリの強制は、ダーティーチェックで便宜を受けるためであることが多い
3.コレクションのために特別な(自由に選択できるなら使っていなかった)データ型を使用:
レイジーロードをサポートするために使うことがある
4.特別なインターフェースを実装:
永続可能とするためにインフラ提供のインターフェースを(ひとつまたは複数)実装す
る
5.特別なコンストラクタを提供:
データベースの値でインスタンスを再構成できるようにするために
6.特別な必須フィールドを提供:
インフラがGuidベースのIdフィールドや、intのVersionを要求
7.特定の言語要素を避ける:
readonlyフィールドを避ける
35
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.