私はドメインモデルをUMLで素早く定義しました。私はドライブアウト機能をテストし始めました。リファクタリングは私のドメインの概念を表現しない小さなクラスに導きましたが、これらのクラスは必要な責任をうまくカプセル化します。ユビキタス言語にDDDを追加するには?
たとえば、多くのライセンスを持つマシン(マシン---> *ライセンス)から始めました。私は、リスト内の対応するライセンスオブジェクトを増減する(つまり、ライセンスにはそのタイプのライセンス数のカウンターがある)メソッドAdd(licenseType)とremove(licenseType)から始めました。
マシンには他の関連付けや動作がありますので、Machine ---> 1 LicenseTypeManager ---> * LicenseのLicenseTypeManagerを作成しました。
私はMachineを集計ルートとして、ValueTypeオブジェクトとしてLicenseTypeManagerを、ValueオブジェクトとしてLicenseを持っています。
LicenseTypeManagerは、リファクタリング時に作成したものであり、まったく言及されておらず、アプリケーションのユビキタス言語の一部でもありません。それが存在するのは大丈夫ですか?
言い換えれば、ULを使用してモデル化し、ドメインをより明確に説明するのに役立つ他の用語を見つけるのはいいですか?
また、私はLicenseTypeManagerがドメインサービスである可能性があると考え始めましたが、私は貧血モデルを作成しているかもしれないと心配し始めました(モデルにはまだ多くのロジックがあります)。ですから、私の次の質問は、それがドメインサービスであるべきか、それがどこに残るべきかです。
JD
の知識が不足しています2は今まで閉じています。なぜ、どのように私はそれが閉鎖されることを避けることができます助言してください? –
現在、それは2近い票を持っています:第1話「オフトピック」、第2話「非建設的」。また、DDDは「灰色の領域」にあります。それは、抽象度が高く、実世界の問題とソフトウェアエンジニアリングの間に立っています。 DDDのアイデアに精通していない人にとっては、質問は無意味なように聞こえるかもしれません。 –