SlideShare a Scribd company logo
1 of 48
ドメインロジックの実装方法と ドメイン駆動設計 Ouobpo 佐藤 匡剛 http://ameblo.jp/ouobpo BPStudy  第 7 回 2008 年 3 月 28 日
もくじ ,[object Object],[object Object]
第Ⅰ部 ドメインロジックの実装方法
3 層アーキテクチャ ,[object Object],Web アプリ FW サービスレイヤー DI / IoC コンテナ データアクセス FW DAO プレゼンテーション層 ドメイン層 インテグレーション層 POJO アクション アクション アクション POJO POJO POJO DAO インテグレーション ゲートウェイ システム間統合 MW FW  ・・・ フレームワーク   MW  ・・・ ミドルウェア ルールエンジン ワークフローエンジン
ビジネスにとって最も重要な部分 Web アプリ FW サービスレイヤー DI / IoC コンテナ データアクセス FW DAO プレゼンテーション層 ドメイン層 インテグレーション層 POJO アクション アクション アクション POJO POJO POJO DAO インテグレーション ゲートウェイ システム間統合 MW ルールエンジン ワークフローエンジン 業務知識を実現している部分=ドメインロジック
ドメインロジック実装の 3 つのパターン Martin Fowler 『エンタープライズアプリケーションアーキテクチャパターン』より) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Transaction Script パターン ( Martin Fowler 『エンタープライズアプリケーションアーキテクチャパターン』より)
Domain Model パターン ( Martin Fowler 『エンタープライズアプリケーションアーキテクチャパターン』より)
Transaction Script と Domain Model の比較 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
日本では・・・ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
給与計算システムの例 ユースケース図
給与システムのドメインモデル
給与システムのデータモデル
給与システムのサンプルコード ,[object Object],[object Object]
Transaction Script 版の設計クラス図
Domain Model 版の設計クラス図
Domain Model パターンの真のメリット① ,[object Object],【 Transaction Script 】 【 Domain Model 】 文章で書かれた仕様がそのままソースコードに 設計クラス図 ? ソースコードの構造が分かる .xls ユースケース記述 ビジネスルール定義書 ソースコード .xls ユースケース記述 ビジネスルール定義書 ソースコード
Domain Model パターンの真のメリット② ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Domain Model を採用する際の障壁 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Domain Model の作り方 (作り方が分からないという方のために) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],この辺がとくに重要!
とはいえ、そんなに複雑なビジネスロジックってあるの? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
とはいえ、そんなに複雑なビジネスロジックってあるの? (つづき) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
余談
DAO と O/R マッパの違い ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Hibernate / JPA の間違った使い方 ,[object Object],[object Object]
第Ⅱ部 ドメイン駆動設計の紹介
『 Domain-Driven Design 』( Eric Evans 著) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
ドメイン駆動設計とはなにか ,[object Object],[object Object],[object Object],[object Object]
DDD 本の構成 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MDD 実践的 モデラー ユビキタス 言語 DDD の基本思想 基本要素 ライフサイクル 深いモデル + しなやかな設計 制約 プロセス 仕様 抽象化 分割 コンテキスト マッピング ドメインの 優先付け 「大きな絵」 の共有 MDD の構成要素 ドメインリファクタリング 戦略的デザイン 単一アプリケーションの開発 大規模開発/ SOA エンティティ 値 サービス モジュール 集約 ファクトリ リポジトリ 中核ドメイン 汎用サブ ドメイン コンテキスト マップ 継続的 統合 メタファ 責務の 階層
Ⅰ . DDD の基本思想 ,[object Object],[object Object],[object Object],[object Object],[object Object]
Ⅱ . MDD の構成要素 ,[object Object],[object Object],[object Object],[object Object],[object Object]
MDD を構成するパターン ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MDD を構成するパターン(つづき) ,[object Object],[object Object],[object Object],[object Object]
Ⅲ .  ドメインリファクタリング ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
深いモデル ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
しなやかな設計 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ⅳ .  戦略的デザイン ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
コンテキスト-他システムとの統合 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
コンテキスト-他システムとの統合 (つづき) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
コンテキスト-他システムとの統合 (つづき) ,[object Object],[object Object]
蒸留-戦略的な優先付け ,[object Object],[object Object],[object Object],[object Object],[object Object]
蒸留-戦略的な優先付け(つづき) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
大規模な構造-「大きな絵」の共有 ,[object Object],[object Object],[object Object],[object Object]
大規模な構造-「大きな絵」の共有 (つづき) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
最後に
なぜドメインモデルなのか? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
ドメインモデル作りを 楽しみましょう!

More Related Content

What's hot

Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
 

What's hot (20)

ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったことドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
 
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみようドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
 
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?実践的な設計って、なんだろう?
実践的な設計って、なんだろう?
 
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
 
ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2
 
3週連続DDDその1 ドメイン駆動設計の基本を理解する
3週連続DDDその1  ドメイン駆動設計の基本を理解する3週連続DDDその1  ドメイン駆動設計の基本を理解する
3週連続DDDその1 ドメイン駆動設計の基本を理解する
 
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
 
Python におけるドメイン駆動設計(戦術面)の勘どころ
Python におけるドメイン駆動設計(戦術面)の勘どころPython におけるドメイン駆動設計(戦術面)の勘どころ
Python におけるドメイン駆動設計(戦術面)の勘どころ
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
DDDはオブジェクト指向を利用してどのようにメンテナブルなコードを書くか
DDDはオブジェクト指向を利用してどのようにメンテナブルなコードを書くかDDDはオブジェクト指向を利用してどのようにメンテナブルなコードを書くか
DDDはオブジェクト指向を利用してどのようにメンテナブルなコードを書くか
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
 
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみようドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
 
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめトランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
 
ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]
ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]
ドメイン駆動設計のプラクティスでカバーできること、できないこと[DDD]
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
 
ちいさなオブジェクトでドメインモデルを組み立てる
ちいさなオブジェクトでドメインモデルを組み立てるちいさなオブジェクトでドメインモデルを組み立てる
ちいさなオブジェクトでドメインモデルを組み立てる
 
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイントドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
 
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
 

Similar to ドメインロジックの実装方法とドメイン駆動設計

Software Development with Symfony
Software Development with SymfonySoftware Development with Symfony
Software Development with Symfony
Atsuhiro Kubo
 
Symfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るためにSymfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るために
Atsuhiro Kubo
 
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
Masayuki Kanou
 
DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発
Tomoharu ASAMI
 
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternApplication Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Atsushi Kambara
 
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Atsuhiro Kubo
 

Similar to ドメインロジックの実装方法とドメイン駆動設計 (20)

ドメイン駆動設計という仕事の流儀
ドメイン駆動設計という仕事の流儀ドメイン駆動設計という仕事の流儀
ドメイン駆動設計という仕事の流儀
 
DDD 20121106 SEA Forum November
DDD 20121106 SEA Forum NovemberDDD 20121106 SEA Forum November
DDD 20121106 SEA Forum November
 
Software Development with Symfony
Software Development with SymfonySoftware Development with Symfony
Software Development with Symfony
 
Symfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るためにSymfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るために
 
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
 
設計/ドメイン設計(3) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第25回】
設計/ドメイン設計(3) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第25回】設計/ドメイン設計(3) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第25回】
設計/ドメイン設計(3) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第25回】
 
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
 
RDRA DDD Agile
RDRA DDD AgileRDRA DDD Agile
RDRA DDD Agile
 
DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発
 
Object-Functional Analysis and Design : 次世代モデリングパラダイムへの道標
Object-Functional Analysis and Design : 次世代モデリングパラダイムへの道標Object-Functional Analysis and Design : 次世代モデリングパラダイムへの道標
Object-Functional Analysis and Design : 次世代モデリングパラダイムへの道標
 
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternApplication Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
 
ドメイン駆動設計入門
ドメイン駆動設計入門ドメイン駆動設計入門
ドメイン駆動設計入門
 
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
設計/ドメイン設計(4) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第26回】
 
ドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計するドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計する
 
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...Frameworks We Live By: Design by day-to-day framework development: Multi-para...
Frameworks We Live By: Design by day-to-day framework development: Multi-para...
 
これって、ドメイン駆動設計?
これって、ドメイン駆動設計?これって、ドメイン駆動設計?
これって、ドメイン駆動設計?
 
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
設計/ドメイン設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第24回】
 
Sourcecode Reading Workshop2010
Sourcecode Reading Workshop2010Sourcecode Reading Workshop2010
Sourcecode Reading Workshop2010
 
Eclipse modeling projectの概要
Eclipse modeling projectの概要Eclipse modeling projectの概要
Eclipse modeling projectの概要
 
Net advantage 2012 volume2 最新情報 xaml プラットフォーム編
Net advantage 2012 volume2 最新情報 xaml プラットフォーム編Net advantage 2012 volume2 最新情報 xaml プラットフォーム編
Net advantage 2012 volume2 最新情報 xaml プラットフォーム編
 

More from Tadayoshi Sato

"Problem Frame Patterns" 紹介
"Problem Frame Patterns" 紹介"Problem Frame Patterns" 紹介
"Problem Frame Patterns" 紹介
Tadayoshi Sato
 
"Detecting Defects in Object Oriented Designs: Using Reading Techniques to In...
"Detecting Defects in Object Oriented Designs: Using Reading Techniques to In..."Detecting Defects in Object Oriented Designs: Using Reading Techniques to In...
"Detecting Defects in Object Oriented Designs: Using Reading Techniques to In...
Tadayoshi Sato
 
"Documenting Frameworks using Patterns" 紹介
"Documenting Frameworks using Patterns" 紹介"Documenting Frameworks using Patterns" 紹介
"Documenting Frameworks using Patterns" 紹介
Tadayoshi Sato
 
"Formalizing Architectural Connection" 紹介
"Formalizing Architectural Connection" 紹介"Formalizing Architectural Connection" 紹介
"Formalizing Architectural Connection" 紹介
Tadayoshi Sato
 
"The Coming-of-Age of Software Architecture Research" 紹介
"The Coming-of-Age of Software Architecture Research" 紹介"The Coming-of-Age of Software Architecture Research" 紹介
"The Coming-of-Age of Software Architecture Research" 紹介
Tadayoshi Sato
 

More from Tadayoshi Sato (11)

Red Hat Tech Night 2019.5 - Camel 3 and Beyond...
Red Hat Tech Night 2019.5 - Camel 3 and Beyond...Red Hat Tech Night 2019.5 - Camel 3 and Beyond...
Red Hat Tech Night 2019.5 - Camel 3 and Beyond...
 
Red Hat Tech Night 2018 - Apache Camel
Red Hat Tech Night 2018 - Apache CamelRed Hat Tech Night 2018 - Apache Camel
Red Hat Tech Night 2018 - Apache Camel
 
Camel on Cloud by Christina Lin
Camel on Cloud by Christina LinCamel on Cloud by Christina Lin
Camel on Cloud by Christina Lin
 
Red Hat の日本でできるグローバルな働き方
Red Hat の日本でできるグローバルな働き方Red Hat の日本でできるグローバルな働き方
Red Hat の日本でできるグローバルな働き方
 
JJBUG 2013 - SwitchYard
JJBUG 2013 - SwitchYardJJBUG 2013 - SwitchYard
JJBUG 2013 - SwitchYard
 
ビジネスロジック実装進化論 - An Evolution of Business Logic Implementation
ビジネスロジック実装進化論 - An Evolution of Business Logic Implementationビジネスロジック実装進化論 - An Evolution of Business Logic Implementation
ビジネスロジック実装進化論 - An Evolution of Business Logic Implementation
 
"Problem Frame Patterns" 紹介
"Problem Frame Patterns" 紹介"Problem Frame Patterns" 紹介
"Problem Frame Patterns" 紹介
 
"Detecting Defects in Object Oriented Designs: Using Reading Techniques to In...
"Detecting Defects in Object Oriented Designs: Using Reading Techniques to In..."Detecting Defects in Object Oriented Designs: Using Reading Techniques to In...
"Detecting Defects in Object Oriented Designs: Using Reading Techniques to In...
 
"Documenting Frameworks using Patterns" 紹介
"Documenting Frameworks using Patterns" 紹介"Documenting Frameworks using Patterns" 紹介
"Documenting Frameworks using Patterns" 紹介
 
"Formalizing Architectural Connection" 紹介
"Formalizing Architectural Connection" 紹介"Formalizing Architectural Connection" 紹介
"Formalizing Architectural Connection" 紹介
 
"The Coming-of-Age of Software Architecture Research" 紹介
"The Coming-of-Age of Software Architecture Research" 紹介"The Coming-of-Age of Software Architecture Research" 紹介
"The Coming-of-Age of Software Architecture Research" 紹介
 

Recently uploaded

Recently uploaded (10)

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 

ドメインロジックの実装方法とドメイン駆動設計