Maison développement back-end tutoriel php php设计模式 Facade(外观模式)_php技巧

php设计模式 Facade(外观模式)_php技巧

May 17, 2016 am 09:18 AM
facade php设计模式

模式定义:外观模式(Facade Pattern):外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式又称为门面模式,它是一种对象结构型模式。
模式结构:

外观模式的就是让client客户端以一种简单的方式来调用比较复杂的系统,来完成一件事情。

Subsystem:
复制代码 代码如下:

class car {
public function start() {
print_r("车子启动");
}
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();
$carObj->catgo($car);

复制代码 代码如下:

/**
* 外观模式 示例
*
* 为子系统中的一组接口提供一个一致的界面,定义一个高层接口,使得这一子系统更加的容易使用
*/
class SubSytem1
{
public function Method1()
{
echo "subsystem1 method1
";
}
}

class SubSytem2
{
public function Method2()
{
echo "subsystem2 method2
";
}
}

class SubSytem3
{
public function Method3()
{
echo "subsystem3 method3
";
}
}

class Facade
{
private $_object1 = null;
private $_object2 = null;
private $_object3 = null;

public function __construct()
{
$this->_object1 = new SubSytem1();
$this->_object2 = new SubSytem2();
$this->_object3 = new SubSytem3();
}

public function MethodA() {
echo "Facade MethodA
";
$this->_object1->Method1();
$this->_object2->Method2();
}

public function MethodB() {
echo "Facade MethodB
";
$this->_object2->Method2();
$this->_object3->Method3();
}
}

// 实例化
$objFacade = new Facade();

$objFacade->MethodA();
$objFacade->MethodB();
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Méthodologie pour améliorer l'efficacité du développement commercial à l'aide du modèle Golang Facade Méthodologie pour améliorer l'efficacité du développement commercial à l'aide du modèle Golang Facade Sep 27, 2023 am 11:33 AM

Introduction méthodologique à l'utilisation du modèle GolangFacade pour améliorer l'efficacité du développement commercial : dans l'environnement de développement logiciel actuel, en évolution rapide, les développeurs doivent développer du code de haute qualité rapidement et efficacement. Afin d'améliorer l'efficacité du développement commercial, nous pouvons utiliser des modèles de conception pour simplifier le processus de développement et réduire la complexité du code. Cet article expliquera comment utiliser le mode Façade dans Golang pour améliorer l'efficacité du développement commercial et donnera des exemples de code spécifiques. 1. Qu'est-ce que le mode Façade ? Le motif de façade est une structure

Modèles de conception couramment utilisés en PHP et leurs méthodes de mise en œuvre Modèles de conception couramment utilisés en PHP et leurs méthodes de mise en œuvre Jun 27, 2023 pm 01:08 PM

PHP est un langage de programmation largement utilisé et très populaire. PHP est une partie très importante des applications Web actuelles. Les modèles de conception jouent un rôle essentiel dans le développement d'applications PHP. Le modèle de conception est un modèle pour résoudre des problèmes qui peut être réutilisé dans différents environnements. Il nous aide à écrire un meilleur code et à le rendre plus fiable, maintenable et évolutif. Dans cet article, nous explorerons certains modèles de conception couramment utilisés en PHP et comment les implémenter. Modèle Singleton Le modèle Singleton est un modèle de création qui permet

Exploration de l'application du modèle Golang Facade dans l'architecture des microservices Exploration de l'application du modèle Golang Facade dans l'architecture des microservices Sep 28, 2023 pm 08:21 PM

Explorer l'application du modèle GolangFacade dans l'architecture des microservices L'architecture des microservices est une méthode permettant de diviser une application en un ensemble de petits services autonomes et exécutés indépendamment, dont chacun peut être développé, déployé et mis à l'échelle indépendamment. Dans cette architecture, les services des appareils communiquent via des API et peuvent être implémentés à l'aide de différents langages de programmation et piles technologiques. Dans une architecture de microservices, il existe des dépendances entre différents services. Par exemple, un service peut devoir appeler plusieurs autres services pour répondre à une demande. À ce stade, utilisez Fac

Comment utiliser Golang Facade pour implémenter des appels d'interface concis Comment utiliser Golang Facade pour implémenter des appels d'interface concis Sep 27, 2023 pm 07:05 PM

Comment utiliser GolangFacade pour implémenter des appels d'interface concis Introduction : Dans le développement de logiciels, les appels d'interface sont une exigence très courante. Lors du développement avec Golang, nous pouvons utiliser le mode Façade pour simplifier la complexité des appels d'interface et améliorer la lisibilité et la maintenabilité du code. Cet article expliquera comment utiliser GolangFacade pour implémenter des appels d'interface concis et fournira des exemples de code spécifiques. 1. Qu'est-ce que le mode Façade ? Le motif de façade est un modèle de conception structurelle

Quels sont les modèles de conception en php ? Quels sont les modèles de conception en php ? Jul 25, 2023 am 09:39 AM

Les modèles de conception PHP incluent : 1. le mode Singleton, qui garantit qu'une classe n'a qu'un seul objet instancié ; 2. le mode Factory, qui encapsule le processus d'instanciation de l'objet dans une classe factory ; 3. le mode factory abstrait, qui est similaire à un mode usine ; Modèle d'usine pour créer des objets 4. Modèle d'observateur, réalisant des dépendances un à plusieurs entre les objets 5. Modèle d'adaptateur, convertissant l'interface d'une classe en interface d'une autre classe 6. Modèle de décorateur, ajouter dynamiquement quelques fonctions supplémentaires à ; un objet ; 7. Modèle d'itérateur ; 8. Modèle de stratégie ; 9. Modèle de méthode de modèle, etc.

Modèles et pratiques de conception de base PHP Modèles et pratiques de conception de base PHP Nov 08, 2023 pm 08:58 PM

Introduction aux modèles et pratiques de conception de base PHP : les modèles de conception sont des modèles de résolution de problèmes couramment utilisés dans le développement de logiciels. Ils fournissent une solution réutilisable qui peut nous aider à suivre les meilleures pratiques et les bons principes de conception de logiciels pendant le processus de développement. En tant que langage de programmation largement utilisé, PHP possède également de nombreux modèles de conception communs et utiles qui peuvent être utilisés dans le développement de base. Cet article présentera plusieurs modèles de conception PHP courants et fournira des exemples de code pertinents. 1. Mode Singleton (Singleton) Le mode Singleton est un type qui permet uniquement

Comment appliquer le modèle Golang Facade pour optimiser l'architecture du code Comment appliquer le modèle Golang Facade pour optimiser l'architecture du code Sep 29, 2023 pm 04:30 PM

Comment appliquer le modèle GolangFacade pour optimiser la structure du code 1. Introduction Dans le domaine du développement logiciel, l'optimisation de la structure du code est très importante. Un programme avec un code bien structuré est non seulement facile à comprendre et à maintenir, mais il présente également une bonne évolutivité et une bonne réutilisabilité. En tant que langage simple et efficace, Golang fournit une multitude d'outils et de fonctionnalités pour aider les développeurs à optimiser la structure du code. L'une des méthodes d'optimisation courantes consiste à utiliser des modèles de conception, tels que le modèle de façade. 2. Qu'est-ce que le mode Façade ?

Introduction au modèle Golang Facade et à sa pratique d'application Introduction au modèle Golang Facade et à sa pratique d'application Sep 28, 2023 am 09:31 AM

Introduction au modèle GolangFacade et aperçu de la pratique d'application : Facade est un modèle de conception qui fournit une interface simple pour masquer les sous-systèmes système complexes. Le mode Façade peut encapsuler une logique complexe et des détails de mise en œuvre dans une interface simple, rendant le système plus facile à utiliser et à entretenir. Contexte : Dans le développement de logiciels, nous devons parfois utiliser plusieurs modules ou classes pour accomplir une tâche complexe. Ces modules doivent coopérer les uns avec les autres, mais une telle coopération peut rendre le code complexe.

See all articles