SlideShare a Scribd company logo
1 of 38
DDD勉強会 #2
SRA 産業第1事業部
鈴木真吾
@giantneco
注意事項
• 発表資料は後で SlideShare にあげます
今回の範囲
• 第1部 ドメインモデルを機能させる
• 第2部 モデル駆動設計の構成要素
• モデルを分離するアーキテクチャ
• 構成要素のパターン
• ライフサイクルのパターン
• 第3部 より深い洞察へ向かうリファクタリング
• 第4部 戦略的設計
アーキテクチャ
• DDDを採用するうえでどのようなアーキテクチャを採用する
か?
• ドメインモデルを置くレイヤをそれ以外から分離したい
• ドメインモデルのレイヤが依存するものを少なくしたい
レイヤー化アーキテクチャ
ユーザ
インターフェース
アプリケーション
モデル
インフラストラクチャ
ユーザ・外部に情報を表示、
操作の受付する
一般的な技術的機能を置く
ソフトウェアの要求を満た
す
ビジネスロジックを置く
依存性逆転の法則(DIP)
• 上位のモジュールは下位のモジュールに依存してはならない
• どちらのモジュールも「抽象」に依存すべきである
クラス A
クラス B
具象クラス A
クラス B
抽象クラス B’
DIPを使ったレイヤー化アーキテクチャ
ユーザ
インターフェース
アプリケーション
モデル
インフラストラクチャ
その他のアーキテクチャ
• DDDをクリーンアーキテクチャやヘキサ
ゴナルアーキテクチャと組み合わせて使っ
てもよい
• 右図の引用元
• https://8thlight.com/blog/uncle-
bob/2012/08/13/the-clean-architecture.html
• http://alistair.cockburn.us/Hexagonal+archit
ecture
ここまでのまとめ
• DDDを採用する際には、モデル層を隔離できるアーキテクチャ
を採用する
• モデル層はDIPを利用して他の層へ依存しない構築を目指す
構成要素に関するパターン
ドメイン上の概念をどのようにオブジェクトに反映するか
• 関係
• エンティティ
• 値オブジェクト
• サービス
• ドメインイベント
• モジュール
関係
• モデル上での関係
• 現実に存在する2者の“関係”を抽
象化したもの
• 実装上は
• オブジェクトポインタ
• カプセル化したもの
• etc で一意ではない
• 扱いやすくするには?
関係: 依存の方向を強制する
国
大統領
国
大統領
関係: 限定子を付加して多重度を減らす
国
大統領
国
大統領
1..*
期間
関係: 本質的ではない関連を除去する
国
大統領
国
大統領
1..*
期間
エンティティと値オブジェクト
• エンティティ
• オブジェクトの同一性が重要なもの
• → 属性が一致しても同一とはみなせないもの
• → 属性、クラスまでも異なっても同一とみなせるもの
• 値オブジェクト
• オブジェクトの属性のみが重要なもの
• → オブジェクトの同一性は大事ではない
エンティティ
• エンティティとしたオブジェクトは
• ライフサイクルの連続性と同一性に集中すること
• 本質的でない属性はそぎ落とす
• 逆に同一性と関連した属性はそのエンティティと一緒になるようにする
• 各オブジェクトに対して結果が一意となることが保証される操作を定
義すること
• ID の取得などで実現できる
• モデルとして
• 同じものであるということが何を意味するかを定義しなければならない
エンティティ:余計な属性をそぎ落とす
• 余計な属性=エンティティのふるまい
が必要としないもの
• ユースケースとして
• 電話番号、住所での顧客を検索すること
がある
顧客ID
名前
平均販売量
製品カテゴリ
顧客
セールスマン
優先順位
連絡先電話番号
連絡先住所
販売連絡先
エンティティ:余計な属性をそぎ落とす
顧客ID
名前
連絡先電話番号
連絡先住所
顧客
セールスマン
優先順位
販売連絡先
顧客ID
名前
平均販売量
製品カテゴリ
顧客
セールスマン
優先順位
連絡先電話番号
連絡先住所
販売連絡先
製品カテゴリ
平均販売量
事業分野
値オブジェクト
• あるモデル要素が、その属性しか関心の対象にならないのであ
れば、その要素を値オブジェクトとして分類する
• 値オブジェクトは
• 不変なものとして扱うこと
• 同一性を与えず、複雑な設計を避ける
• 設計としてはできるだけ値オブジェクトに切り出せた方がよい
値オブジェクトは「概念的な統一体」
顧客ID
名前
住所
顧客
街区
都市
州
住所
顧客ID
名前
街区
都市
州
顧客
サービス
• オブジェクトとしてモデル化すると不自然なもの
• エンティティでも値オブジェクトなどの名詞的なものではない
• ドメイン上に存在する操作など動詞的なもの
• サービスは各レイヤに配置可能
• アプリケーションレイヤのアプリケーションサービス
• ドメインレイヤならドメインサービス
• 例:銀行口座ドメインにおける資金振替サービス
• 2つの口座とグローバルなルールを伴うので、口座のメソッドにすると
扱いづらくなる
ドメインイベント
• ドメイン内での何かの出来事を抽象化する
• 「○○するときに」
• 「もしそうなったら、…」
• 「…の場合は、通知してほしい」
• など
• ユビキタス言語としても「○○イベント」と組み込むとよい
• 条件がそろったときに、オブジェクトがこの「イベント」を発
行して、通知される側はこの「イベント」を受け取って何かす
るようにしておくと便利
モジュール
• モジュール自体もコミュニケーションの仕組み
• 「では『顧客』モジュールについて話しましょう」
• モジュールは
• 疎結合・高凝集を目指してつくる
• 特に、ドメイン層を他から分離する
• モジュールにもユビキタス言語の一部になる名前を付けること
• 単一の概念オブジェクトを実装するコードはすべて、同一のオブジェ
クトにならなくても、同一のモジュールにまとめること
構成要素のまとめ
ドメインモデルの構成要素は次がある
• 関係
• エンティティ
• 値オブジェクト
• サービス
• ドメインイベント
• モジュール
オブジェクトのライフサイクル
データベース表現アクティブ
データベース
OR
ファイル表現
生成
格納
再構成
アーカイブ
修正
削除
削除
ライフサイクルに関する課題
• ライフサイクルを通じて整合性を維持すること
• ライフサイクルを管理するのが複雑でも、モデルが侵食されな
いようにする
ライフサイクルに関するパターン
• 集約
• オブジェクトの所有権・境界を明確にする
• ファクトリ
• 集約の生成・再構成を行い集約内部構造のカプセル化を維持する
• リポジトリ
• 永続化されたオブジェクトへのアクセス手段を提供する
集約
<<エンティティ>>
エンジン
<<エンティティ>>
自動車
<<値オブジェクト>>
タイヤ
<<値オブジェクト>>
車輪
<<値オブジェクト>>
位置
<<エンティティ>>
顧客
集約
<<集約ルート>>
<<エンティティ>>
エンジン
<<集約ルート>>
<<エンティティ>>
自動車
<<値オブジェクト>>
タイヤ
<<値オブジェクト>>
車輪
<<値オブジェクト>>
位置
<<集約ルート>>
<<エンティティ>>
顧客
集約ルート
• 集約ルートの責務
• グローバルな同一性を持つ
• 不変条件をチェックする最終的な責務を負う
• 削除は、境界内部のすべてを一度に削除する
• 集約内のエンティティ
• 集約ルート内での同一性をもつ
ファクトリ
• 集約生成の責務を持つ
• オブジェクト、というより集約全体が対象
• クライアントが生のコンストラクタは呼び出さないようにする
• 実装の際には次に注意
• 各操作をアトミックに行うようにする
• 入力パラメータを慎重に選択する
クライアント ファクトリ 生成物
生成物
new(parameter) 生成
リポジトリ
• 責務
• 永続化した集約を再構成する
• クライアントにグローバルな集約ルートへのアクセスを提供する
• 実装の際は
• 型を抽象化する
• クライアントから切り離す利点を生かすこと
• トランザクション制御をクライアントにゆだねること
クライアント リポジトリ
一致するオブジェクト
選択条件 委譲 ファクトリ
DBインターフェース
etc
ライフサイクルのまとめ
• 集約を使い、オブジェクトの境界・所有権を明確にする
• 生成の責務をオブジェクトからファクトリに移動する
• 生成したあとのオブジェクトはリポジトリから取得できるよう
にする
まとめ
• モデルの構成要素を学んだ
• モデルのライフサイクルを管理する方法を学んだ
その他
• 何か聞いてみたい話があれば企画します
• 最近の仕事の話
• 関数型言語 (Scala, Haskell, etc)
• Android, Kotlin
• コンパイラ
• パフォーマンス関連
• 機械学習
• 計算量理論・組み合わせ数学
• 量子コンピューティング
• ボードゲーム
以下補足
ドメインモデル貧血症
• オブジェクトが単なる属性の入れ物になっている状態
• ある機能を実装するときに、getter で必要な情報を取り出して
呼び出し元側でデータを操作して setter でオブジェクトの更新
をしてたりしてないか?
参考文献
• エリック・エヴァンスのドメイン駆動設計
• 実践ドメイン駆動設計
• ドメインイベントについてはこちらで言及されている

More Related Content

What's hot

RDRA DDD Agile
RDRA DDD AgileRDRA DDD Agile
RDRA DDD Agile増田 亨
 
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...日本マイクロソフト株式会社
 
ドメイン駆動設計という仕事の流儀
ドメイン駆動設計という仕事の流儀ドメイン駆動設計という仕事の流儀
ドメイン駆動設計という仕事の流儀増田 亨
 
【de:code 2020】 様々なデバイスで実現するリモートワーク時代のコミュニケーション
【de:code 2020】 様々なデバイスで実現するリモートワーク時代のコミュニケーション【de:code 2020】 様々なデバイスで実現するリモートワーク時代のコミュニケーション
【de:code 2020】 様々なデバイスで実現するリモートワーク時代のコミュニケーション日本マイクロソフト株式会社
 
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみようドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう増田 亨
 
【de:code 2020】 ついに来た!! 普通のマシンで高品質な 3D データがヌルヌル動く Azure Remote Rendering
【de:code 2020】 ついに来た!! 普通のマシンで高品質な 3D データがヌルヌル動く Azure Remote Rendering【de:code 2020】 ついに来た!! 普通のマシンで高品質な 3D データがヌルヌル動く Azure Remote Rendering
【de:code 2020】 ついに来た!! 普通のマシンで高品質な 3D データがヌルヌル動く Azure Remote Rendering日本マイクロソフト株式会社
 
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かうソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう増田 亨
 
【de:code 2020】 PostgreSQL もスケールさせよう! - Hyperscale (Citus) -
【de:code 2020】 PostgreSQL もスケールさせよう! - Hyperscale (Citus) -【de:code 2020】 PostgreSQL もスケールさせよう! - Hyperscale (Citus) -
【de:code 2020】 PostgreSQL もスケールさせよう! - Hyperscale (Citus) -日本マイクロソフト株式会社
 
ドメイン駆動設計入門
ドメイン駆動設計入門ドメイン駆動設計入門
ドメイン駆動設計入門増田 亨
 
【de:code 2020】 GitHub 新機能のご紹介(2020 年 5 月発表)
【de:code 2020】 GitHub 新機能のご紹介(2020 年 5 月発表)【de:code 2020】 GitHub 新機能のご紹介(2020 年 5 月発表)
【de:code 2020】 GitHub 新機能のご紹介(2020 年 5 月発表)日本マイクロソフト株式会社
 

What's hot (10)

RDRA DDD Agile
RDRA DDD AgileRDRA DDD Agile
RDRA DDD Agile
 
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
【de:code 2020】 ハンズオンで学ぶ AI ~ Bot Framework Composer + QnA Maker / Custom Visi...
 
ドメイン駆動設計という仕事の流儀
ドメイン駆動設計という仕事の流儀ドメイン駆動設計という仕事の流儀
ドメイン駆動設計という仕事の流儀
 
【de:code 2020】 様々なデバイスで実現するリモートワーク時代のコミュニケーション
【de:code 2020】 様々なデバイスで実現するリモートワーク時代のコミュニケーション【de:code 2020】 様々なデバイスで実現するリモートワーク時代のコミュニケーション
【de:code 2020】 様々なデバイスで実現するリモートワーク時代のコミュニケーション
 
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみようドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
 
【de:code 2020】 ついに来た!! 普通のマシンで高品質な 3D データがヌルヌル動く Azure Remote Rendering
【de:code 2020】 ついに来た!! 普通のマシンで高品質な 3D データがヌルヌル動く Azure Remote Rendering【de:code 2020】 ついに来た!! 普通のマシンで高品質な 3D データがヌルヌル動く Azure Remote Rendering
【de:code 2020】 ついに来た!! 普通のマシンで高品質な 3D データがヌルヌル動く Azure Remote Rendering
 
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かうソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
 
【de:code 2020】 PostgreSQL もスケールさせよう! - Hyperscale (Citus) -
【de:code 2020】 PostgreSQL もスケールさせよう! - Hyperscale (Citus) -【de:code 2020】 PostgreSQL もスケールさせよう! - Hyperscale (Citus) -
【de:code 2020】 PostgreSQL もスケールさせよう! - Hyperscale (Citus) -
 
ドメイン駆動設計入門
ドメイン駆動設計入門ドメイン駆動設計入門
ドメイン駆動設計入門
 
【de:code 2020】 GitHub 新機能のご紹介(2020 年 5 月発表)
【de:code 2020】 GitHub 新機能のご紹介(2020 年 5 月発表)【de:code 2020】 GitHub 新機能のご紹介(2020 年 5 月発表)
【de:code 2020】 GitHub 新機能のご紹介(2020 年 5 月発表)
 

Similar to 社内 DDD 勉強会 #2

ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718Mao Ohnishi
 
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】増田 亨
 
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】Tomoharu ASAMI
 
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜Fumiyasu Sumiya
 
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説Daisuke Nishino
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけらAtsushi Nakamura
 
クラウド時代にこそ求められるIt部門の役割
クラウド時代にこそ求められるIt部門の役割クラウド時代にこそ求められるIt部門の役割
クラウド時代にこそ求められるIt部門の役割Yusuke Oi
 
R&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのかR&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのか恵 桂木
 
R&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのかR&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのか恵 桂木
 
R&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのかR&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのか恵 桂木
 
R&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのかR&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのか恵 桂木
 
インフラ領域の技術スタックや業務内容について紹介
インフラ領域の技術スタックや業務内容について紹介インフラ領域の技術スタックや業務内容について紹介
インフラ領域の技術スタックや業務内容について紹介MicroAd, Inc.(Engineer)
 
アプリケーション・アーキテクチャ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第34回】
アプリケーション・アーキテクチャ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第34回】アプリケーション・アーキテクチャ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第34回】
アプリケーション・アーキテクチャ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第34回】Tomoharu ASAMI
 
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計Tadayoshi Sato
 
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~貴志 上坂
 
設計/アーキテクチャ設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第19回】
設計/アーキテクチャ設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第19回】設計/アーキテクチャ設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第19回】
設計/アーキテクチャ設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第19回】Tomoharu ASAMI
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるpospome
 
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション日本マイクロソフト株式会社
 

Similar to 社内 DDD 勉強会 #2 (20)

ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718
 
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
 
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
 
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
【JJUG CCC 2016 Fall 公開版】ドメイン駆動設計とscala 〜既存プロジェクトへの適用〜
 
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
 
クラウド時代にこそ求められるIt部門の役割
クラウド時代にこそ求められるIt部門の役割クラウド時代にこそ求められるIt部門の役割
クラウド時代にこそ求められるIt部門の役割
 
R&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのかR&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのか
 
R&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのかR&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのか
 
ils202202
ils202202ils202202
ils202202
 
R&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのかR&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのか
 
ils202202
ils202202ils202202
ils202202
 
R&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのかR&D部門におけるデータ共有・利活用はなぜ難しいのか
R&D部門におけるデータ共有・利活用はなぜ難しいのか
 
インフラ領域の技術スタックや業務内容について紹介
インフラ領域の技術スタックや業務内容について紹介インフラ領域の技術スタックや業務内容について紹介
インフラ領域の技術スタックや業務内容について紹介
 
アプリケーション・アーキテクチャ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第34回】
アプリケーション・アーキテクチャ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第34回】アプリケーション・アーキテクチャ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第34回】
アプリケーション・アーキテクチャ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第34回】
 
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
 
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
始めよう! ドメイン駆動設計&マイクロサービス開発 ~C# と Azure Service Fabric で最高の DDD 開発を~
 
設計/アーキテクチャ設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第19回】
設計/アーキテクチャ設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第19回】設計/アーキテクチャ設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第19回】
設計/アーキテクチャ設計 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第19回】
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
 
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
 

More from shingo suzuki

システムパフォーマンス勉強会#8
システムパフォーマンス勉強会#8システムパフォーマンス勉強会#8
システムパフォーマンス勉強会#8shingo suzuki
 
システムパフォーマンス勉強会#6
システムパフォーマンス勉強会#6システムパフォーマンス勉強会#6
システムパフォーマンス勉強会#6shingo suzuki
 
社内機械学習勉強会 #5
社内機械学習勉強会 #5社内機械学習勉強会 #5
社内機械学習勉強会 #5shingo suzuki
 
システムパフォーマンス勉強会#5
システムパフォーマンス勉強会#5システムパフォーマンス勉強会#5
システムパフォーマンス勉強会#5shingo suzuki
 
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4shingo suzuki
 
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4shingo suzuki
 
システムパフォーマンス勉強会#1
システムパフォーマンス勉強会#1システムパフォーマンス勉強会#1
システムパフォーマンス勉強会#1shingo suzuki
 
システムパフォーマンス勉強会 #0
システムパフォーマンス勉強会 #0システムパフォーマンス勉強会 #0
システムパフォーマンス勉強会 #0shingo suzuki
 
ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表shingo suzuki
 
Google I/O 2016 報告会
Google I/O 2016 報告会Google I/O 2016 報告会
Google I/O 2016 報告会shingo suzuki
 

More from shingo suzuki (11)

システムパフォーマンス勉強会#8
システムパフォーマンス勉強会#8システムパフォーマンス勉強会#8
システムパフォーマンス勉強会#8
 
システムパフォーマンス勉強会#6
システムパフォーマンス勉強会#6システムパフォーマンス勉強会#6
システムパフォーマンス勉強会#6
 
社内機械学習勉強会 #5
社内機械学習勉強会 #5社内機械学習勉強会 #5
社内機械学習勉強会 #5
 
システムパフォーマンス勉強会#5
システムパフォーマンス勉強会#5システムパフォーマンス勉強会#5
システムパフォーマンス勉強会#5
 
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
 
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
 
システムパフォーマンス勉強会#1
システムパフォーマンス勉強会#1システムパフォーマンス勉強会#1
システムパフォーマンス勉強会#1
 
システムパフォーマンス勉強会 #0
システムパフォーマンス勉強会 #0システムパフォーマンス勉強会 #0
システムパフォーマンス勉強会 #0
 
ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表
 
Google I/O 2016 報告会
Google I/O 2016 報告会Google I/O 2016 報告会
Google I/O 2016 報告会
 
SPIN で
SPIN でSPIN で
SPIN で
 

社内 DDD 勉強会 #2

Editor's Notes

  1. ドメイン駆動設計の原理についての話 実装etcの話はまだ少ない