Facade – Facade – einfach (Media-Player)
Stell dir vor, du hast einen kleinen Musik-Player mit ein paar Bausteinen: Einer kümmert sich ums Entschlüsseln (Decoder), ein anderer um das Abspielen (Speaker/Renderer). Als Nutzer willst du aber nicht beide Klassen kennen oder jedes Mal selbst koordinieren müssen. Deine Aufgabe: Schreibe eine Fassade `MediaFacade`, die diese beiden Helferlein hinter einer einfachen Methode `play(file)` zusammenfasst. Dein Code soll dafür sorgen, dass beim Aufruf zuerst decodiert und dann abgespielt wird – der Benutzer sieht nur den einfachen Einstiegspunkt.
Abnahmekriterien:
Fassade hat eine einfache öffentliche API; Subsystem-Klassen existieren separat und werden nur von der Fassade koordiniert.
Starter-Code
- Python: facade_media.py
- Java: MediaFacade.java
- C++: facade_media.cpp