パターン定義: ファサード パターン: サブシステムとの外部通信は、サブシステム内の一連のインターフェイスに一貫したインターフェイスを提供するために、統合されたファサード オブジェクトを通じて実行する必要があります。このインターフェイスにより、このサブシステムが容易になります。使用します。アピアランスモードはファサードモードとも呼ばれ、オブジェクト構造モードです。
パターン構造:
外観モードを使用すると、クライアントは 1 つのことを完了するために、より複雑なシステムを簡単な方法で呼び出すことができます。
サブシステム:
コードをコピーします コードは次のとおりです:
class car {
public function start() {
print_r("Car starting")
}
public function check_stop() {
print_r(" ブレーキチェックは正常です");
}
public function check_box() {
print_r("燃料タンクが正常であることを確認します");
}
public function check_console() {
print_r("インパネが正常かどうかを確認します異常です");
}
}
//facade モード
class carfacade {
public function catgo(car $carref){
$carref->check_stop();
$carref->check_box();
$carref->check_console();
$carref->start();
}
}
//クライアントはこれを呼び出すだけです。
$car = new car();
$carObj = new carfacade();
コードは次のとおりです: < ;?php
/**
* 外観パターンの例
*
* サブシステム内の一連のインターフェースに一貫したインターフェースを提供し、このサブシステムを使いやすくするための高レベルのインターフェースを定義します
*/
class SubSytem1
{
public function Method1()
{
echo "subsystem1 method1
"
}
}
class SubSytem2
{
public function Method2()
{
echo "サブシステム 2 メソッド 2
";
クラス SubSytem3
{
パブリック関数 Method3()
{
エコー "サブシステム 3 メソッド 3
";
クラス ファサード
{
private $_object1 = null;
private $_object3 = null;
public function __construct()
{
$this->_object1 = new SubSytem1();
$this ->_object2 = 新しい SubSytem2();
$this->_object3 = 新しい SubSytem3();
}
public function MethodA() {
echo "Facade MethodA
"; this->_object1->Method1();
$this->_object2->Method2();
public function MethodB() {
echo "Facade MethodB
"; this->gt;_object2->Method2();
$this->_object3->Method3()
}
//
$objFacade = new Facade(); をインスタンス化します。 ;メソッドA();
$objFacade->メソッドB();
http://www.bkjia.com/PHPjc/323791.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/323791.html
技術記事
パターン定義: ファサード パターン: サブシステム内の一連のインターフェイスに一貫したインターフェイスを提供するには、サブシステムとの外部通信を統合されたファサード オブジェクトを通じて実行する必要があります...