見出し画像

アーキテクチャと集約の要諦


まえがき

重要なことを残してある記事でして、メモ書きしておきます。

まとめ

情報設計における階層化ならびにグループ化は大事。

ドメインの階層化ないしはグループ化を実現するためのアプローチの引き出しを増やすことも大事。

レポジトリ層をドメインと1対1で対応づけるのはデフォルト。
(自動生成の型をそのままマップする。)

ユースケースに応じて独自のレポジトリ層を設けて、情報設計の透明度を上げるのが、アレンジ。

重要な引用

従来の階層をオブジェクト モデルに使用してはならないということではありません。集約を定義するためにモデル内のクラスのグループで境界線を引くのではなく、まず動作に基づいて大雑把に集約を定義し、クラスを集約定義内に配置するべきだということです。正しい集約定義を求めて分析不能に陥ることなく、正しい一歩を踏み出して、構造より動作に基づいたシステムを構築してください。

アーキテクチャと集約

補遺

Typescriptでいうとレコード型を使ったオブジェクトによる集約が該当します


簡単ですが、以上です。

この記事が気に入ったらサポートをしてみませんか?