Movatterモバイル変換


[0]ホーム

URL:


AA
Uploaded byA AOKI
PPTX, PDF26,020 views

「実践ドメイン駆動設計」社内読書会まとめ ~IDDD本難民に捧げる1章から7章~

Sansan DDD勉強会 #2の発表資料です。

Related topics:
Downloaded 102 times
株式会社ネクストスケープ 御中青木 淳夫 & 上坂 貴志Sansan DDD勉強会 #2http://connpass.com/event/23174/2015.12.16「実践ドメイン駆動設計」社内読書会まとめ~IDDD本難民に捧げる1章から7章~
2本日は、翔泳社さんの書籍「実践ドメイン駆動設計(通称IDDD本)」の社内読書会の状況と、書籍のポイントを整理して紹介します。IDDD本は、DDDを解説した書籍の中ではとても読みやすく、実際に活用してみようと思わせる内容となっています。とはいえ、520ページ(付録除く)もあるため、個人で読み進めることは容易ではありません。そこで、ネクストスケープ社では、週に一度、読書会を行っています。今回は、この読書会の様子と、IDDD本の章別の要約とポイントをまとめて紹介します。紹介する内容が、これからIDDD本を読んでみようと思われる方の道標になれば幸いです。※このスライドに書いている内容は、独自の理解・見解によるものです。DDDのとらえ方も人それぞれですし、何かありましたら、懇親会等で心優しくご指摘いただけると幸いです。このセッションでお伝えしたいこと
3大手SIer、テクニカルライター、福井のWebデザイン会社を経て、ネクストスケープ所属。プログラマーとしてシステム開発の難しさを感じていた2000年頃、XPとvbUnitに出会い、アジャイルに傾倒。その後、Javaでの大規模ウォーターフォール案件でチームリーダーを経験したり、Web制作会社でPHPを書いてみたり。最近はデジタルマーケティングやクラウドソリューションに携わったりすることが多い。Microsoft MVP for Visual Studio(2006~)Sitecore MVP(2012~)、Certified Scrum Master。.NET関連の著書3冊。Microsoft技術とOSSが好き。散歩とラーメンとお酒と甘いものも好き。青木 淳夫(@aoki1210)自己紹介上坂 貴志(@takashiuesaka)長年に渡ったフリーエンジニア稼業に終止符を打ち、ネクストスケープ所属。エバンジェリスト・アーキテクト。若かりし保守・運用に苦しんでいた時期にXP・TDDと出会い、実プロジェクトで何度も実験。そして失敗。同時期にソフトウェアアーキテクチャの重要性を痛感して修行を開始。様々なプロジェクトでTry&Errorを繰り返してきた。近年はMicrosoft Azureとの関わりが多く、エバンジェリストという仕事柄、登壇・執筆活動がメイン。Microsoft MVP for Azure、Certified Scrum Master。Azure Machine Learingの共著1冊。Microsoft技術とアーキテクチャ、DDD、Scrumが好き。温泉とタイ料理が好き。甘いのも辛いのどっちも好き。
4 1週間で1回開催(ときおり非開催) 1回で0.5章を目安 5月から実施 参加者は社員もパートナーさんも含め3名から10名くらい(若手多め) 固定メンバは5名程度 現在10章まで完了週に1回のランチ勉強会読書会の様子
5読書会を始めたきっかけは「IDDD本の中身を皆でディスカッションして、お互いの理解を深めたい」という意図でした。読書会という名目ですが、若いエンジニアが多いので、開発の課題やアーキテクチャそのものの基礎的な説明が多くなっているため、時間内訳の95%ほど上坂さんがDDDの話を熱く語る時間になっています。現在の1周目が終わったら、改めてワンランク上の2周目を行う予定です。読書会の背景と現状
6社内でのDDD実践例(勤怠管理アプリケーション)ピットタッチで登録した勤務情報を編集したり登録管理するアプリケーションをDDDで構築しました。(使用技術→CentOS / C#, ASP.NET MVC, Azure, SQL Database, Azure Table / Power BI 等)上坂さん曰く、過去数回にわたって、C#でDDDを行ったが簡単ではなかったとのこと。この例ではDDDでそれなりに上手くいったそうです。
株式会社ネクストスケープ 御中目次:IDDD本の構成
8目次の章で挫折して難民になりかねないので、興味ある章から読んでも良いかもしれません。IDDD本の目次章 タイトル ページ コメント目次 序文、賛辞、初めに、謝辞、著者、訳者、本書の読み方 24 各章の概要説明があります1章 DDDへの誘い 38 DDDを実践するメリットについて2章 ドメイン、サブドメイン、境界づけられたコンテキスト 40 巨大な泥団子にならによう業務別に分けよう3章 コンテキストマップ 24 迷子にならないためのもの4章 アーキテクチャ 53 レイヤから、ヘキサゴナルアーキテクチャへ5章 エンティティ 45 値オブジェクトとの違いを意識6章 値オブジェクト 42 エンティティとの違いを意識7章 サービス 19 変換・算出はここで8章 ドメインイベント 45 分散&同期のテクニック9章 モジュール 11 「内部構成もユビキタス」で可読性アップ10章 集約 40 コンテキスト内の最小トランザクション単位11章 ファクトリ 11 ファクトリって、Factoryメソッドじゃないんだよ12章 リポジトリ 44 いわゆるリポジトリ13章 境界づけられたコンテキストの統合 5614章 アプリケーション 28付録A 集約とイベントソーシング:A+ES 41付録B 参考文献 7
9IDDD本を読んでみよう技術書は、最低3回読むと著者が伝えたいことを、よく理解できますよ500ページもあるIDDD本を3回も読むとか、そんなことできるんですか…?IDDD本の目的と構成を理解すれば、そんなに難しくないですよ!
10IDDD本の目的は「DDDの理論を実際に適用する」ことで、それらを順序だてて説明しています。また、SaasOvation(サーズオベイション)という疑似プロジェクトを例としたサンプルコードも提供されています。IDDD本の構成主題:実践ドメイン駆動設計副題(目的):エリック・エヴァンスが確立した理論を実際の設計に応用する著者:ヴァーン・ヴァーノン / 訳者:高木正弘実現したい未来DDDを達成するための分類1章DDDへの誘い2章ドメイン3章コンテキスト設計・モデリング・実装方法4章アーキテクチャ5章エンティティ6章値オブジェクト7章サービス8章ドメインイベント9章モジュール10章集約11章ファクトリ12章リポジトリ13章コンテキスト統合14章アプリケーション
11DDD実装サンプルIDDD本のソースコードサンプルの場所IDDD本SaasOvation - Javaのサンプル(ヴァーンさん)https://github.com/VaughnVernon/IDDD_SamplesIDDD本SaasOvation - C#のサンプル(ヴァーンさん)https://github.com/VaughnVernon/IDDD_Samples_NETおまけ ASP.NET MVC + C# ミュージックストアのDDD版https://github.com/thiagolunardi/MvcMusicStoreDDDさらにおまけ、IDDD本 C#のサンプルの日本語に適当にいじったものhttps://github.com/aoki1210/IDDD_Samples_NET
株式会社ネクストスケープ 御中1章:DDDへの誘い
131章の構成は• 私にもできるの?• あなたがDDDをすべき理由• DDDを行う方法• DDDを採用する事業価値• DDDの導入にあたっての課題• 現実味のあるフィクションとなっています。DDD(ドメイン駆動開発)を使うとどんなメリットがあるのか、なぜDDD以外のやり方だと失敗するのか、そして、上司、ドメインエキスパート、技術者へのDDDのすばらしさの売り込み方法を紹介しています。「1章:DDDへの誘い」の構成
14DDDに取り組める人は、若手の開発者、中堅レベルの開発者、ベテラン開発者、アーキテクト、ドメインエキスパート、マネージャ等。学ぶことができる人であれば、だれでもDDDを実践できる。DDDのメリットは次の3つ。1. ドメインエキスパートと開発者は、共同で業務をモデリングし「ユビキタス言語」を確立し、「私たちとあの人たち」ではなく「私たち」のチームを作る。2. 事業戦略構想に対応するため、サービス指向アーキテクチャやビジネス思考アーキテクチャを実現できる。3. ソフトウェアの真の技術的要求を満たす。スケーラブルで、SLAを満たし、アーキテクチャから詳細設計まで様々な問題に対応できる。逆に複雑なシステムでDDDを使わないと、シンプルに作ることができず開発に失敗する可能性もあります。「1章:DDDへの誘い」のポイント
15DDDとユビキタス言語は実現できるお客さんも、ドメインエキスパートも、開発者も、あらゆるところで同じ言葉「ユビキタス言語」で意思疎通できたら最高だと思いませんか?理想はわかるんですが、昔から存在するUML(統一モデリング言語)ですらエンジニア以外には普及していないのに、DDDの導入って難しいんじゃないですか..これまでは技術的なシステム都合(特にDBと永続化)に引きずられて、業務とシステムの間にギャップが生じていたんです。これから、DDDはもっと普及すると考えています。
株式会社ネクストスケープ 御中2章:ドメイン、サブドメイン、境界づけられたコンテキスト
172章の構成は• 全体像• なぜそれほどまでに戦略的設計を重視するのか• 実世界におけるドメインとサブドメイン• 境界づけられたコンテキストの意味を知る• サンプルのコンテキストとなっています。ここではDDD固有の主要概念である「ドメイン」「コアドメイン」「サブドメイン」「境界づけられたコンテキスト」の説明が行われています。「2章:ドメイン、サブドメイン、境界づけられたコンテキスト」の構成※ドメインの構成を示した図コアドメイン支援サブドメイン汎用サブドメインコンテキスト
18技術による戦術的パターンに走らずに、戦略的設計(ドメインとコンテクストに注目し、適切に分けよう)を実践しようという内容です。ドメインとは、問題空間(問題領域)のこと。業務そのものでアクターのアクションなども含まれる。ビジネス上最も重要なもの、戦略的に不可欠なものをコアドメインと呼び、それらを補助する支援サブドメイン(業務的)と汎用サブドメイン(非業務的)が存在する。例えば、「受注」「在庫」などは、同じ言葉で話していても、ドメイン毎に意味合いが違うことがあるので注意が必要。境界づけられたコンテキストとは、解決空間(解決領域)のこと。言語的な境界を意識し、全部入りの巨大なモデルを作らないようにする。ドメインエキスパートの声を聴いて、境界づけられたコンテキストを構築する。例えば、「認証アクセスコンテキスト」「在庫コンテキスト」など、大きすぎても小さすぎてもいけない。「2章:ドメイン、サブドメイン、境界づけられたコンテキスト」のポイント
19複雑なシステムを作らないために、ユビキタス言語の呼び方に敏感になろうあたりまえですが、複雑でないシンプルなシステムを作りたいですね。しかし、システムを分割しても、ひとつのDBでデータを管理してしまったことで分割した意味が無くなってしまったことはありませんか?それは、ありますね。システムや業務が違うのに、DB変更時に調整が必要なケースですよね。そうなんです。DBをひとつだけで管理するとオブジェクトもひとつしか意味を持てず、巨大な泥団子になりかねません。システムや業務が変わったら作業者も異なることが多いのでユビキタス言語の境界を意識して正しいコンテキストで分割したいですね。
株式会社ネクストスケープ 御中3章:コンテキストマップ
213章の構成は• なぜそんなにもコンテキストマップは重要なのかです。2章のドメイン、コンテキストの境界を理解することができ、モデルの統合に役立ちます。「3章:コンテキストマップ」の構成コンテキストマップ
22コンテキストマップは、プロジェクトの現状を表す図(アーキテクチャドキュメント)のこと。目的は解決空間(解決領域)の現状を俯瞰できるようにすること。DDD固有の図で、コンテキストを丸で囲む。コンテキスト間の関係を上流(Upstream)と下流(Downstream)で示す。例えば基盤チームは上流。それを利用する業務チームは下流となる。チームの力関係がアーキテクチャに影響を与えてしまうこともあるが、パートナーシップで協力的な関係(顧客/供給者の関係)を築くことが望ましい。残念ながら下流のチームが順応者の関係になってしまうことも多い。コンテキスト間が蜜に依存しあわないように、上流と下流のコンテキストの間に腐敗防止層を作ることが多い。なお、あらゆるコンテキストから依存されるような共有カーネルは各チームで相談しないといけないので、やめるべき。「3章:コンテキストマップ」のポイント
23ドメインとコンテキストの最新状況を「見える化」しようドメインと境界づけられたコンテキストを設計したらコンテキストマップを作りましょうプログラムの依存関係に似ているから納品時にツールで自動生成とかじゃダメですかね..開発の途中で、コンテキストの状態が分からなくなって混乱してしまうことがあるんです。目立つところに書いておいて、共通認識と正しい理想を描けるようにしましょう。
株式会社ネクストスケープ 御中4章:アーキテクチャ
254章の構成は• CIOへのインタビュー• レイヤ• ヘキサゴナル(ポートとアダプター)アーキテクチャ• サービス指向• Representational State Transfer(REST)• コマンドクエリ責務分離(CQRS)• イベント駆動アーキテクチャ• データファブリック及びグリッドベース分散コンピューティングとなっています。ここでは、さまざまなアーキテクチャでDDDを実現する方法を検討しています。「4章:アーキテクチャ」の構成①レイヤアーキテクチャ③ヘキサゴナルアーキテクチャ(hexagonalは英語で6角形の意味)②レイヤアーキテクチャ(DI使用時)
26エバンズ本ではレイヤアーキテクチャを中心に説明されていますが、これに対してIDDD本では、ドメインの独立性を保つものとして、ヘキサゴナルアーキテクチャ(ポート&アダプタ)を提唱しています。レイヤアーキテクチャでは責務を「UI層」「 アプリケーション層」「ドメイン層」「インフラストラクチャ層」の分類でしたが、ヘキサゴナルアーキテクチャは、入力元、出力先に依存しないインターフェイスで切り替えられるようになっています。DDDのアーキテクチャでは、複数のドメインで連携する場合には分散システム的な挙動となるため、分散アーキテクチャが主流です。その例として以下のようなパターンが挙げられています。・コマンドクエリ責務分離(CQRS)・イベント駆動アーキテクチャ・パイプ&フィルター・イベントソーシングサービス指向技術(SOA/マイクロサービス等)との関連性も高いので、クラウドデザインパターンを理解することもお勧めです。「4章:アーキテクチャ」のポイント
27ヘキサゴナルアーキテクチャのメリットって何DDDでは、ドメイン層が他のレイヤに依存したり汚染されたりしないようにしますなじみ深いレイヤーアーキテクチャとDIじゃ駄目なんですか?DIを用いればレイヤ間の依存は分離できるんですが、アプリケーション層やインフラストラクチャ層が肥大化しやすいんです。ヘキサゴナルアーキテクチャにすることでドメイン層以外が綺麗になるメリットがあります。
株式会社ネクストスケープ 御中5章:エンティティ
295章の構成は• なぜエンティティを使うのか• 一意な識別子• エンティティおよびその特性の発見となっています。右図の例では、Personクラス・Userクラスが「エンティティ」、TenantIDクラスが「識別子」となっています。「5章:エンティティ」の構成※Entityの例(IDDD本 C#サンプルソースより)
30エンティティは、状態が変化していくオブジェクトです。オブジェクトの「生成・変更・破棄」までを管理する必要があるため、一意性が必要になり、それぞれのオブジェクトが一意な識別子を持ちます。RDBの識別子はオートナンバーやシーケンスといったDB問い合わせによる数値型のIDが主流ですが、DDDではインスタンス生成時にアプリケーション側で識別子を生成します。一意な値は、128Bitから32バイトの文字列の型(UUIDやGUID)を使用します。エンティティのバリデーションを行う実装として、Entityクラスの責務ではなく、Validationクラスの責務になる例を紹介しています。(この章は、OOPのプラクティス的な話が詰まった章です。)「5章:エンティティ」のポイント
31DDDが表すエンティティとはあらためてですが、DDDのエンティティってなんだと思います?エンティティといえばER図ですよね。だったら、テーブル構造とかレコードですかね..?RDBなら、それでも間違いではないんですが、DDDのエンティティは「ライフサイクルを管理するオブジェクト」を表します。ライフサイクルを管理する必要があるため、一意で不変の識別子を持ちます。
株式会社ネクストスケープ 御中6章:値オブジェクト
336章の構成は• 値の特徴• ミニマリズムを考慮した結合• 標準型を値として表現する• 値オブジェクトのテスト• 実装• 値オブジェクトの永続化となっています。モデルから値オブジェクトの特性を見つけ出す方法について紹介されています。「6章:値オブジェクト」の構成※値オブジェクトの例(IDDD本 C#サンプルソースより)この図では、前述のPersonエンティティが、値オブジェクトであるContactInformationクラスをプロパティに持ちます。さらに、 ContactInformationクラスが値オブジェクトであるEmailAddressクラス、Telephoneクラス、PostalAdressクラスをプロパティに持っています。
34値オブジェクトは「ドメイン内の何かを計測したり、定量化したり、説明したり」するものです。例)電話番号を数値型(Int型)ではなくTelephone型を使うことで、ドメインの業務を示すことができます。値オブジェクトは「不変」が望ましいとされています。(エンティティは「状態が変化していくオブジェクト」のため逆ともいえます。)不変ということは、コンストラクタ呼び出し時だけ値を設定可能です。GetterはありますがSetterはありません。変更時にはオブジェクトそのものを差し替えます。不変であれば責務がシンプルになり、利用する側としても影響範囲が分かりやすく、バグが入りにくくなるメリットがあります。永続化の実装方法としては、非正規化するか、もしくは正規化した専用テーブルを使う場合があります。最近の人気はNoSQLです。「6章:値オブジェクト」のポイント
35値オブジェクトこそDDDDDDで一番重要なのは「値オブジェクト」かもしれないですね。え、そうなんですか?「値オブジェクト」ってDTO(DataTransferObject)みたいなシンプルなクラスっぽいので、簡単かと思っていました。DDDでは「電話番号」のようなユビキタス言語をプリミティブな数値型で済ませてしまうのではなく「値オブジェクト」として表現します。そのため業務を理解し、責務を検討し、「オブジェクトの振る舞い(プロパティとメソッド)」を設計する必要があります。これはオブジェクト指向のモデリングスキルが必要ともいえます。
株式会社ネクストスケープ 御中7章:サービス
377章の構成は• ドメインサービスとは何か(…の前にドメインサービスとは何でないのか)• 本当にサービスが必要なのかをたしかめる• ドメインにおけるサービスのモデリング• サービスのテストとなっています。「7章:サービス」の構成※ドメインサービスの例(IDDD本 C#サンプルソースより)※アプリケーションサービスの例(IDDD本 C#サンプルソースより)
38ドメインモデルの設計をしていると、エンティティや値オブジェクトといった「ドメインオブジェクト」だけではなく、外に出したほうが良いロジックも存在します。その際、ステートレスなクラス「サービス」を使用できます。大きく、サービスは次の2つが存在します。・ドメインサービスエンティティや値オブジェクトの責務ではないドメインモデルのロジック(ドメインオブジェクトを使う処理やファサード)・アプリケーションサービス(詳細は14章)非常に薄く、ドメインモデル上のタスクの調整のために使うロジック(腐敗防止層の変換・アダプタ等)サービスを作るときにミニレイヤのアンチパターンにならないよう注意する必要があります(エンティティや値オブジェクトがデータコンテナに成り下がらないように注意します)。「7章:サービス」のポイント
39サービスは注意しないとDDDが失敗するエンティティと値オブジェクトに記述することが適切ではないビジネスロジックは「サービス」に書いてもいいですよ了解しました。では、ドメインモデルのロジックはすべて「サービス」に実装しますね。あなたのような人が「ドメインモデル貧血症」「トランザクションスクリプト」だらけのメンテナンスしにくいコードを書くんですよ..適切なエンティティと値オブジェクトにロジックを書いて、「サービス」の利用は極力控えてくださいね。
40■神原さんのスライド「Implementing Domain-Driven Design: Part 1」http://www.slideshare.net/atsushikambara/implementing-domaindriven-design-part-1■DDD本http://www.amazon.co.jp/dp/4798121967■ IDDD本http://www.amazon.co.jp/dp/479813161X■クラウドデザインパターンhttp://www.amazon.co.jp/dp/4822277372/■ Azureクラウドデザインパターンhttp://www.amazon.co.jp/dp/4822298337/■ Developing Core Business Applications with Domain-Driven Design (DDD) and Microsoft .NEThttps://channel9.msdn.com/Events/TechEd/NorthAmerica/2013/DEV-B311参考文献
ご清聴ありがとうございました。DDDで良いシステム開発を!

Recommended

PDF
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
 
PDF
3週連続DDDその1 ドメイン駆動設計の基本を理解する
PDF
マイクロサービス 4つの分割アプローチ
PDF
ドメイン駆動で開発する ラフスケッチから実装まで
PDF
ドメイン駆動設計 コアドメインを語り合ってみよう
PDF
イミュータブルデータモデル(入門編)
PDF
ソフトウェア開発のやり方の改善
PDF
ドメイン駆動設計に15年取り組んでわかったこと
PDF
マルチテナントのアプリケーション実装〜実践編〜
PDF
ドメイン駆動設計 ( DDD ) をやってみよう
PDF
オブジェクト指向プログラミングのためのモデリング入門
PDF
3週連続DDDその3 ドメイン駆動設計 戦略的設計
PDF
ドメイン駆動設計の正しい歩き方
PPTX
境界付けられたコンテキスト 概念編 (ドメイン駆動設計用語解説シリーズ)
PDF
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
PDF
リーンなコードを書こう:実践的なオブジェクト指向設計
PDF
Docker Compose 徹底解説
PDF
ドメイン駆動設計のためのオブジェクト指向入門
PDF
ドメイン駆動設計 分析しながら設計する
PDF
ドメイン駆動設計 の 実践 Part3 DDD
PDF
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
PDF
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
PDF
ドメイン駆動設計 基本を理解する
PDF
正しいものを正しく作る塾-設計コース
PDF
C#実装から見るDDD(ドメイン駆動設計)
PDF
ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]
PDF
ドメイン駆動設計のための Spring の上手な使い方
PDF
ドメイン駆動設計入門
PDF
実践に向けたドメイン駆動設計のエッセンス

More Related Content

PDF
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
 
PDF
3週連続DDDその1 ドメイン駆動設計の基本を理解する
PDF
マイクロサービス 4つの分割アプローチ
PDF
ドメイン駆動で開発する ラフスケッチから実装まで
PDF
ドメイン駆動設計 コアドメインを語り合ってみよう
PDF
イミュータブルデータモデル(入門編)
PDF
ソフトウェア開発のやり方の改善
PDF
ドメイン駆動設計に15年取り組んでわかったこと
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
 
3週連続DDDその1 ドメイン駆動設計の基本を理解する
マイクロサービス 4つの分割アプローチ
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動設計 コアドメインを語り合ってみよう
イミュータブルデータモデル(入門編)
ソフトウェア開発のやり方の改善
ドメイン駆動設計に15年取り組んでわかったこと

What's hot

PDF
マルチテナントのアプリケーション実装〜実践編〜
PDF
ドメイン駆動設計 ( DDD ) をやってみよう
PDF
オブジェクト指向プログラミングのためのモデリング入門
PDF
3週連続DDDその3 ドメイン駆動設計 戦略的設計
PDF
ドメイン駆動設計の正しい歩き方
PPTX
境界付けられたコンテキスト 概念編 (ドメイン駆動設計用語解説シリーズ)
PDF
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
PDF
リーンなコードを書こう:実践的なオブジェクト指向設計
PDF
Docker Compose 徹底解説
PDF
ドメイン駆動設計のためのオブジェクト指向入門
PDF
ドメイン駆動設計 分析しながら設計する
PDF
ドメイン駆動設計 の 実践 Part3 DDD
PDF
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
PDF
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
PDF
ドメイン駆動設計 基本を理解する
PDF
正しいものを正しく作る塾-設計コース
PDF
C#実装から見るDDD(ドメイン駆動設計)
PDF
ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]
PDF
ドメイン駆動設計のための Spring の上手な使い方
マルチテナントのアプリケーション実装〜実践編〜
ドメイン駆動設計 ( DDD ) をやってみよう
オブジェクト指向プログラミングのためのモデリング入門
3週連続DDDその3 ドメイン駆動設計 戦略的設計
ドメイン駆動設計の正しい歩き方
境界付けられたコンテキスト 概念編 (ドメイン駆動設計用語解説シリーズ)
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
リーンなコードを書こう:実践的なオブジェクト指向設計
Docker Compose 徹底解説
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 の 実践 Part3 DDD
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
ドメイン駆動設計 基本を理解する
正しいものを正しく作る塾-設計コース
C#実装から見るDDD(ドメイン駆動設計)
ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]
ドメイン駆動設計のための Spring の上手な使い方

Similar to 「実践ドメイン駆動設計」社内読書会まとめ ~IDDD本難民に捧げる1章から7章~

PDF
ドメイン駆動設計入門
PDF
実践に向けたドメイン駆動設計のエッセンス
PDF
実践に向けたドメイン駆動設計のエッセンス
PPTX
ドメイン駆動設計勉強会発表
PDF
20130202 ドメイン駆動設計読書会at名古屋のお誘い
PDF
20120806 ドメイン駆動設計読書会at名古屋のお誘いα版
PPTX
20151110 ドメイン駆動設計によるサービス開発
PDF
ドメイン駆動設計とは何か 【入門編】
PPTX
20100324 勉強会資料(ドメイン駆動)
PDF
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
PDF
ndsと要求開発
PDF
20130202 ドメイン駆動設計読書会at名古屋のお誘い β
PPT
勉強会開催の案内
PPTX
Implementing Domain-Driven Design: Part 1
PPTX
NS study8 DDD Microservices Azuer Service Fabric
PDF
QCon Tokyo 2013
PPTX
DDのはなし【勉強会資料】
PDF
Loose and fluffy_ddd_intro
PDF
MultiParadimeDesign
PDF
ドメイン駆動設計を実践するプログラマーの悩み
ドメイン駆動設計入門
実践に向けたドメイン駆動設計のエッセンス
実践に向けたドメイン駆動設計のエッセンス
ドメイン駆動設計勉強会発表
20130202 ドメイン駆動設計読書会at名古屋のお誘い
20120806 ドメイン駆動設計読書会at名古屋のお誘いα版
20151110 ドメイン駆動設計によるサービス開発
ドメイン駆動設計とは何か 【入門編】
20100324 勉強会資料(ドメイン駆動)
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
ndsと要求開発
20130202 ドメイン駆動設計読書会at名古屋のお誘い β
勉強会開催の案内
Implementing Domain-Driven Design: Part 1
NS study8 DDD Microservices Azuer Service Fabric
QCon Tokyo 2013
DDのはなし【勉強会資料】
Loose and fluffy_ddd_intro
MultiParadimeDesign
ドメイン駆動設計を実践するプログラマーの悩み

More from A AOKI

PDF
楽しんで始めるHoloLensアプリ設計
 
PDF
インセプションデッキのひな形(PDF形式:説明表示版)
 
PPTX
インセプションデッキのひな形(PPT形式:ダウンロード用)
 
PPTX
Microsoft機械学習の簡単な紹介
 
PPTX
Azure MLやってみよう
 
PPTX
ASP.NET vNextの全貌
 
PPTX
SQL Serverの関数を一覧でマスターしよう
 
楽しんで始めるHoloLensアプリ設計
 
インセプションデッキのひな形(PDF形式:説明表示版)
 
インセプションデッキのひな形(PPT形式:ダウンロード用)
 
Microsoft機械学習の簡単な紹介
 
Azure MLやってみよう
 
ASP.NET vNextの全貌
 
SQL Serverの関数を一覧でマスターしよう
 

「実践ドメイン駆動設計」社内読書会まとめ ~IDDD本難民に捧げる1章から7章~

Editor's Notes

  • #2 1
  • #9 青木は賛辞で挫折した
  • #11 カーボーイの説明はわかりやすいようで、そうでもないです。コードまで熟読している人ではないとわからないそうです。

[8]ページ先頭

©2009-2025 Movatter.jp