問題のドメインには、多数の名前付きスナークが含まれています。スナークのいくつかはブージャムです。
これをモデル化するには、少なくとも 2 つの方法があります。
// プロパティとして: クラススナーク{ 文字列名; ブール is_boojum; }; // リストとして: クラススナーク{ typedef 長い ID; やった; 文字列名; }; tree<Snark::Id> boojums;
スナークにはオスとメスがいると判断した場合、スナーク クラスの定義に「性別」プロパティを追加するのは直感的に思えます。そして、5 人を除くすべてのスナークが打ち負かされた対象であると判断した場合、王族のリストを作成します。
適用できる原則はありますか、それともアーキテクチャの好みの問題ですか?