ホームページ  >  記事  >  バックエンド開発  >  PHPのファサードパターンとは何ですか?彼の強みは何ですか?該当するシナリオは何ですか?

PHPのファサードパターンとは何ですか?彼の強みは何ですか?該当するシナリオは何ですか?

慕斯
慕斯オリジナル
2021-06-23 16:38:592428ブラウズ

PHP には理解してマスターする必要があるパターンが多すぎます。長い間勉強して、いくつのパターンをマスターしたでしょうか? PHPのファサードパターンとは何ですか?彼の強みは何ですか?該当するシナリオは何ですか?どのくらい知っていますか?この記事では、PHP のファサード パターンとは何なのかを説明します。彼の強みは何ですか?該当するシナリオは何ですか?一緒に学びましょう

関連する推奨事項:PHP でのアダプター モードとストラテジー モードの使用について

Facade モード

定義: ファサード モード (アピアランス モードとも呼ばれる) は、複数のサブシステムの複数の異なるインターフェイスにアクセスするための統合インターフェイスを提供することを指します

. これは、サブシステムが提供するインターフェイスのセットです統合された高レベルのインターフェイス

ファサード モードに関しては、コードを例として取り上げ、新しいファイルを作成し、そのファイル内にクラスを定義します。

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

<?php
class Light
{
  function turnOn( )
{
  echo &#39;打开闪光灯<br />&#39; ;
}
function turnOff( )
{
  echo &#39;关闭闪关灯<br />&#39; ;
}
}
class Camera
{
  function active( )
echo &#39;打开照相机<br />&#39; ;
}
function deactive()
{
  echo &#39; 关闭照相机<br />&#39; ;
}
}
class Facade
{
protected $light;
protected $camera;
function _construct( )
{
$this->light = new Light();
$this->camera = new Camera( ) ;
}
function start( )
{
$this->light->turnOn() ;
$this->camera->active( ) ;
}
function stop()
{
$this->light->turn0ff();
$this->light->deactive();
}
}
$light = new Light();
$camera = new Camera();
$light ->turn0n( ) ;
$camera->active() ;
}

利点:

1. サブシステム コンポーネントを顧客から保護するため、顧客が処理するオブジェクトの数が減り、サブシステム

さらに使いやすくなりました

##2. サブシステムとクライアント間の疎結合関係を実現します

##3. アプリケーションが必要とする場合、サブシステム クラスの使用を制限しません。したがって、システムの使いやすさと使いやすさのどちらかを選択できます

該当するシナリオ:

1. いくつかの複雑なサブシステムにインターフェイスのセットを提供します

2. サブシステムの独立性を向上させる

3. 階層構造では、ファサード パターンを使用してシステムの各層のインターフェイスを定義できます

推奨学習: "

PHPビデオチュートリアル

>>

以上がPHPのファサードパターンとは何ですか?彼の強みは何ですか?該当するシナリオは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。