Wzorce projektowe – Facade

Założenie: Zbudujemy prosty przykład wzorca Facade, który uprości dostęp do złożonego systemu składającego się z kilku klas.

Krok po kroku:

  1. Stworzenie klas reprezentujących podsystem:
  2. 
    
    				

    Tworzymy trzy proste klasy reprezentujące różne części naszego podsystemu. Każda klasa ma jedną metodę.

  3. Stworzenie klasy Facade:
  4. 
    subsystemA = new SubsystemA();
        $this->subsystemB = new SubsystemB();
        $this->subsystemC = new SubsystemC();
      }
    
      public function complexOperation(): string {
        return "Facade inicjuje złożoną operację:\n" .
               $this->subsystemA->operationA() .
               $this->subsystemB->operationB() .
               $this->subsystemC->operationC();
      }
    }
    ?>
    				

    Klasa Facade agreguje obiekty podsystemu i definiuje metodę `complexOperation()`, która wykonuje sekwencję operacji podsystemu.

  5. Użycie Facade:
  6. 
    complexOperation();
    ?>
    				

    Użycie Facade jest proste – tworzymy obiekt i wywołujemy metodę `complexOperation()`. Klient nie musi znać szczegółów działania podsystemu.

Ten przykład pokazuje podstawowe zastosowanie wzorca Facade. Zachęcamy do dalszego zgłębiania tematu wzorców projektowych w PHP!

Dodaj komentarz 0

Your email address will not be published. Required fields are marked *