little-hands/ddd-q-and-a

ドメイン駆動設計のメリット、デメリット、どのようなものを作るときに向いていて、どのようなものを作るときに向いていないのか教えていただきたいです。

Opened this issue · 0 comments

Question

ドメイン駆動設計のメリット、デメリット、
どのようなものを作るときに向いていて、
どのようなものを作るときに向いていないのか
教えていただきたいです。

Answer

メリット、というより目的は、①機能性を高める=役立つものを作ること②保守性を高める=技術的負債の量を増やさずに開発し続けることです。デメリットとしては、導入において知識のハードルがあること、推奨するアーキテクチャの実装オーバーヘッドがあることです。
向き不向きとしては、ソフトウェアが使われる領域(ドメイン)が複雑なときに向いていて、シンプルすぎるもの、複雑さの中核がドメインではなく技術的なもの(大量高速処理、機械学習など)にはあまり向いていないです。
DDDの狙いについては以下の動画で解説しているのでよろしければご覧ください。
https://www.youtube.com/watch?v=A2EU0paEVJ0