ファクトリーモード
呼び出しコードが基本クラスをインスタンス化する手順を決定することを回避できるようにしながら、オブジェクトのインスタンスを取得するためのインターフェイスを提供します。
ファクトリ パターンは、実際には、クラスのインスタンス化のための統一された関数インターフェイスを確立することです。統合された通話、統合された制御。
ファクトリ パターンは、PHP プロジェクト開発で最も一般的に使用されるデザイン パターンで、通常、PHP クラス ライブラリにクラスをロードするためにシングルトン パターンと一緒に使用されます。
応用シナリオ
Json クラス、String クラス、Xml クラスがあります。
これらのクラスをインスタンス化するためにファクトリ メソッドを使用しない場合、各クラスを新しいものにする必要があり、クラスが多すぎて、どこにでも新しいものが存在します。
ファクトリ パターンを導入し、ファクトリを通じてオブジェクト インスタンスを均一に作成します。
コード:
[php] www.2cto.com
//ファクトリ パターンは、オブジェクトのインスタンスを取得するためのインターフェイスを提供すると同時に、呼び出しコードが基本クラスをインスタンス化する手順を決定することを回避できるようにします
//文字列クラス
クラス文字列 {
パブリック関数 write() {}
}
//Json クラス
クラス Json {
パブリック関数 getJsonData() {}
}
//xml クラス
クラス XML {
パブリック関数 buildXml() {}
}
//ファクトリークラス
クラスファクトリー {
パブリック静的関数 create($class) {
新しい $class を返します
}
}
Factory::create("Json") //Json オブジェクトを取得します
作者: initphp