実行時に、ユーザーの動作と履歴に基づいて、ソート操作を実行する必要があります。私の場合、SortByDate/SortByDemand/SortByConsumption
は単に文字列を返すか、order by節(これは複雑かもしれません)と言うことができます。なぜソート用のファクトリパターン?
ほとんどのフォーラムでは、ソートに戦略パターンを使用する必要があります。
私はここでの戦略パターンの画像を添付しています。 Utilクラスは、SortByDate/SortByDemand/SortByConsumptionの3つのクラスのオブジェクトを呼び出します。
ソートの新しい方法が定義されるたびに、utilクラスを変更して新しい戦略を定義する必要があります。しかし、私は工場を使用して、それを実装した場合
は、utilのクラスは、単に工場を呼び出す必要があり、それが呼び出すためにどのクラスの世話をします。だから私は工場を使うべきだと思う。
しかし、私はその戦略がそのようなニーズのための最良のパターンであることを読んだ。なぜ戦略パターンはここで良いですか?
基本的にあなたが戦略を扱うクラスのsuplyするデータの種類に興味があるshouldt。あなたはそのクラスにいくつかのデータをsuplyし、そのクラスに必要な戦略を実装させます。ファクトリパターンでは、データとそれを処理するクラスについて知る必要があります。戦略パターンでは、何かを知る必要はありません。 –