DDD 方式でアプリケーションを構築しようとしています。集計ルートが、作成者、コメント作成者、コメント、ステータスなどの他の集計を持つ「ページ」であると想像してください...
ページには、次のようなさまざまな設定を含めることもできます。
- 専用ページ
- コメントを許可します
- 匿名のコメントを許可する
- x 日付後にロック
- ナメクジ
これらの「設定」をモデル化する最善の方法を検討しようとしています。現在、個々の設定を値オブジェクトとして持つ設定コレクションを探しています。ご覧のとおり、これらの一部は本質的にブール値であり、日付などの特定の値を含むものもあります。何十もの設定があり、一部はデフォルトである可能性がある場合、特定の設定ごとに「設定」コレクションをモデル化しますか、それとも適用可能な設定を含むコレクションとしてモデル化しますか?
この問題に取り組むための「より良い」または標準の DDD 方法はありますか? ここで仕様パターンを使用することを検討していましたが、実際には当てはまらないという結論に達しました
生意気な2番目の質問で申し訳ありません....
ページは多くのステータス (下書き、公開済み、スケジュール済み、アーカイブ済みなど) のうちの 1 つを持つことができますが、一度に 1 つのステータスしか持つことができません。これをモデル化する最良の方法に関して同様の質問。ステータスはアイデンティティを持つものを表すため、現時点ではステータスをエンティティとして実装しました。これをワークフローまたはステータス履歴としてモデル化する方が良いのではないかと思っていました。