問題タブ [strategy-pattern]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
146 参照

java - 戦略パターンのヘルプが必要

が存在しますinterface Algorithm

ありclass MathAlgorythm implements Algorithm (returns MathResult, which implements Result

ありclass ChemitryAlgorythm implements Algorithm (returns ChemitryResult, which implements Result

Context classさらに、これらのアルゴにデータを渡すために使用されるが存在します。データは次の方法で渡されます。

私が executeStrategy を実行して戻ってきた としreturn MathAlgorithm.execute(data);ます。結果型の何かが得られますよね?

次に実行し return ChemitryAlgorithm.execute(data);ます もう一度何か結果を取得します

質問: 結果はインターフェースです。MathResult または ChemistryResult として具象クラスの実装にアクセスする必要があります。言い換えると。Result 型の何かを取得したら、さらに深く掘り下げて、インターフェイスの背後に隠れているクラスを知る必要があります

このとりとめのない話があまり混乱しないことを願っています。

読んで回答していただきありがとうございます

0 投票する
2 に答える
2757 参照

entity-framework - 純粋な POCO エンティティ フレームワークを使用したリポジトリ パターンでの戦略の例の取得

ユーザーが多くの投稿を持っているUserなどの簡単な例を使用して、エンティティフレームワークとリポジトリパターンを使用して戦略パターンを展開しようとしています。Post

この回答hereから、次のドメインがあります。

ユーザーを使用するロールをサポートするインターフェイスを追加します。

現在、私のリポジトリは次のようになっています。

戦略(行き詰まっているところ)。このコードはどうすればよいですか? これを実装する方法の例を教えてください。どこに配置すればよいですか?

私の基本的な問題は、この質問で尋ねられたことです。戦略パターンを使用して、投稿のないユーザーと投稿のあるユーザーを取得できるようにしたいと考えています。

0 投票する
2 に答える
213 参照

php - サブクラスがインターフェイスを実装しても問題ありませんか?

私はより深刻な OOP (以前は継承を使用していました) に足を踏み入れていますが、私を混乱させる何かに出くわしました。

データベース接続を処理するスーパー クラスがあります。

サイトのメンバーシップ関数に関連する接続を処理するサブクラスがあります

戦略パターンを採用して、異なるが類似した機能を共存させたいと考えています。例えば:

  • データベースに接続し、新しい登録の名前と電子メールを確認します
  • データベースに接続し、登録確認のためにユーザー名と確認コードを確認します
  • データベースに接続し、ログイン用のユーザー名とパスワードを確認します
0 投票する
3 に答える
268 参照

design-patterns - ColdFusion 実装戦略パターン

私は ColdFusion を初めて使用し、ColdFusion MX (7) を使用しており、戦略パターンの実装に興味があります。しかし、実装を開始するための最良の方法が何であるかはわかりません。

0 投票する
6 に答える
39758 参照

java - ストラテジーパターンとコマンドパターンの違い

ストラテジーパターンコマンドパターンの違いは何ですか?また、Javaでいくつかの例を探しています。

0 投票する
1 に答える
291 参照

c# - 単純な戦略パターンの例の問題

エラーは次のとおりです。

FirstPattern.Character.Character' には、0 引数を取るコンストラクターが含まれていません

コードは次のとおりです。

次に、文字クラスがあります。

文字クラスとサブクラスで何をすべきかわかりません。正しい方向に私を微調整できますか?

0 投票する
3 に答える
4681 参照

design-patterns - 戦略設計パターンと抽象ファクトリパターンの違いは何ですか?

誰かが私にこれら2つの違いを説明し、それぞれをいつ使用するかについてのある種のガイドラインを与えようとすることができますか?例は本当にいいでしょう。

0 投票する
3 に答える
5133 参照

design-patterns - Scalaのストラテジーパターンに代わるより良い方法は?

Java(または同様の言語)でプログラミングしているときは、インターフェイスと実装クラスを使用して、単純なバージョンのStrategyパターンを使用して、コード内の特定の概念の実行時に選択可能な実装を提供することがよくあります。

非常に工夫された例として、Javaコードでノイズを発生させる可能性のある動物の一般的な概念を持ち、実行時に動物のタイプを選択できるようにしたい場合があります。だから私はこれらの行に沿ってコードを書くでしょう:

十分に単純です。しかし最近、私はScalaでプロジェクトに取り組んでおり、同じことをしたいと思っています。次のような特性を使用してこれを行うのは簡単なようです。

ただし、これはJavaに非常に似ており、機能的ではないようです。言うまでもなく、特性とインターフェースは実際には同じものではありません。ですから、実行時に抽象的な概念の具体的な実装を選択できるように、Scalaコードにストラテジーパターン(またはそのようなもの)を実装するためのより慣用的な方法があるかどうか疑問に思っています。それとも、これを達成するための最良の方法は特性を使用していますか?

0 投票する
3 に答える
1441 参照

c# - 戦略パターン-正しい実装

このパターンを初めて使用し、C#を使用しています。

これが正しい実装であることを確認したかっただけです。
Winformにボタンがあり、クリックすると、ドロップダウンボックスから選択して定義された特定の形式でデータが出力されます。これは将来変更される可能性があるため、戦略パターンを使用して変更内容をカプセル化します。

「DisplayData()」という単一のメソッドを公開するだけの「ストラテジーインターフェイス」があります。

ボタンをクリックすると、次のコードを使用します。

これは、このパターンを使用するための許容可能な方法ですか?明らかに、追加の出力メディアが識別された場合は、新しいサブクラスを作成し、switchステートメントに追加の「case」を追加します。

ありがとう。

0 投票する
6 に答える
13023 参照

design-patterns - 「責任の連鎖」パターンと「戦略」パターンの違いは何ですか?

数日前にSOでここで尋ねた別の質問のために、私はこの質問を提起しています。
特定の問題を解決する必要がありましたが、2 つの返信を受け取った後、2 つのパターンがその問題 (および他の同様の問題) を解決するのに役立つことに気付きました。

  1. 責任の連鎖
  2. ストラテジー

私の質問は:

これらのパターンの違いは正確には何ですか?