シングルトン、工場、オートローダ
-
12-12-2019 - |
質問
(SPL_AUTOLOAD_REGISTER(SPL_AUTOLOAD_REGISTER)を使用する場合は、もう1つ必要です。
- シングルトン:必要なクラスはすべて、データベース、ログ、R&R、フロントなどを含むオートローダによってロードされます。オブジェクトは私には明らかではありません
- ファクトリ:再度、オートローダは必須クラスをロードするので、インスタンス化インターフェイスを実装する、または抽象クラス の拡張をインスタンス化するためのファクトリクラスを使用するポイントはあります。
解決
シングルトンは特定のクラスの単一のインスタンスを保持するために使用されます。そのため、インスタンスが取得されるたびに、常に同じになります。したがって、設定データは、それを取得するときにデータが常に同じであることを意味します。
これはクラスの自動ロードとは異なり、状態をクラスのデフォルトにリセットするたびに、クラスを作成します。それでも、シングルトンは本質的に輝かれたグローバル変数であるので、控えめに使用されるべきです。
オブジェクトの決定と作成を委任して工場パターンを使用する必要があります。具体的なクラスを指定したくない場合は、一連の条件下で特定のサブクラスを必要とします。構築パラメータをオートローダに渡すことはできません。
オートローダを使用してクラスファイルを見つけて含めるだけです。オブジェクトをインスタンス化したり、どのオブジェクトをロードするかについての決定などのロジックを(そしてできません)。
所属していません StackOverflow