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:
- Stworzenie klas reprezentujących podsystem:
- Stworzenie klasy Facade:
- Użycie Facade:
Tworzymy trzy proste klasy reprezentujące różne części naszego podsystemu. Każda klasa ma jedną metodę.
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.
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!