ドメイン駆動設計の教材
クリーンアーキテクチャ(CA)の本を読みました。
Clean Architecture 達人に学ぶソフトウェアの構造と設計 (アスキードワンゴ)
- 作者:Robert C.Martin,角 征典,高木 正弘
- 発売日: 2018/08/01
- メディア: Kindle版
図の真ん中の「Entities」はドメイン駆動設計(DDD)で作るという話があったので、DDDを勉強してみようと思いました。
(via https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html)
CAとDDDの両方を知っておかないと、相違点が分からないですね。
なので、DDDも基本知識が必要だと思いました。
ドメイン駆動設計とは?
教えて、Wikipedia!
ドメイン駆動設計(Domain-driven design, DDD)とはソフトウェアの設計手法であり、「複雑なドメインの設計は、モデルベースで行うべき」であり、また「大半のソフトウェアプロジェクトでは、システムを実装するための特定の技術ではなく、ドメインそのものとドメインのロジックに焦点を置くべき」であるとする。
「ドメインモデル」とか「ユースケース」という用語が出てきますね。
教えて、Google!
DDDの基本的な用語の解説は、以下の記事が参考になりそうです。
ドメイン駆動設計の参考書
DDDの本はたくさんありました。
ドメイン駆動設計の参考記事
後で読んでみます。
上記本の著者、成瀬允宣さんの記事など。(本の基になった記事)
CAの記事にも目を通しておきたいです。
関数型プログラミングでのドメイン駆動設計
CA本を見て、「これ関数型プログラミングでもできるよね?」と思いました。
DDDも関数型プログラミングでやってる人がいたので、一応見ておきたいです。
簡単にチャチャっと導入してみたいですね!