LS 1.2 - Übungen- Schichtenarchitektur implementieren
4. Ampelschalter-App
4.1. Lösung - Ampelschalter-App
Antwort 1: Bedeutung der Schichtenarchitektur
Die Schichtenarchitektur trennt Logik, Präsentation und Steuerung, wodurch der Code wartbarer, testbarer und erweiterbar wird. Sie erleichtert die Teamarbeit und fördert Wiederverwendbarkeit.
Antwort 2: Komponenten, Dateien und ihre Rollen
- App.js:
Die Hauptkomponente, die die Zustandsverwaltung übernimmt. Importiert die modularen KomponentenTrafficLightundControlButton. Überträgt den Zustand der Ampelfarbe (light) sowie die Wechsel-Funktion (nextLight) als Props an die Präsentationskomponenten. - TrafficLight.js:
Präsentationskomponente zur Anzeige des aktuellen Lichtstatus. Zeigt die aktuelle Ampelfarbe als Text und Kreis an. Nimmt die Farbe (light) als Prop entgegen und passt die Schriftfarbe dynamisch an. - ControlButton.js:
Präsentationskomponente, die den Schalter (Button) zum Wechseln der Ampelfarbe enthält. Ruft die übergebene FunktionnextLightauf, um den Zustand zu ändern.