6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【ミライトデザイン社内勉強会#18】「IDDD本から理解するドメイン駆動設計」輪読会~第9章「モジュール」~

Last updated at Posted at 2021-03-04

前回の記事

【ミライトデザイン社内勉強会#17】「IDDD本から理解するドメイン駆動設計」輪読会~第8章「ドメインイベント」~ - Qiita

実践DDD本 第9章「モジュール」~高凝集で疎結合にまとめる~

パッケージ構成を考える時に毎回迷ってしまうので、DDDに限らず、パッケージを分けるときに基準にしていることがあれば知りたい

  • 言語やフレームワークによってはある程度パッケージ構成が決まっている
  • マイクロサービスにするかとかアプリケーションの規模でも変わってくる
  • プロジェクトや規模感、人によって違いがあるので明確な基準はないと思う
  • ディレクトリの話とパッケージの話は一緒なことが多いけど、厳密には違う
    • 言語によってはパッケージとディレクトリが同じではないこともある

アーキテクチャごと、に適したパッケージの分け方とかあるの?例えば、ヘキサゴナルアーキテクチャの時はこんな感じにした方が良いとか

  • アーキテクチャとディレクトリの構成はほとんど関係ない
  • 一番最初に悩むのがパッケージ構成
    • エディタのおかげでパッケージ構成を変更するのは比較的楽になっているので、見にくくなってきたらパッケージ構成を見直したりもする

一般的なモジュールは機能単位のイメージがあるけど、DDDにおいてはクラス群をまとめるものとしているがパッケージみたいのもの?

  • 一般的にモジュールはモジュール単位で実行できるものとしているが、DDDにおいては独立しているとかは関係なく、意味ある単位で分割するものとしている(パッケージと同じ感じ)
    • モジュールを分ける基準としては、モジュールの中で簡潔する
    • ドメインオブジェクトの場合は参照の単位で分けている
ディレクトリ、パッケージ、モジュール、ライブラリ、プラグイン各単語の違い

次回

【ミライトデザイン社内勉強会#19】「IDDD本から理解するドメイン駆動設計」輪読会~第10章「集約」~ - Qiita

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?