Letztendlich haben wir jedoch eine programmiertechnische Aufgabe
?? Was haben wir?
Zumindest habe ich da eine Solche in der Aufgabenstellung erkannt. Habe ein Datenmodell entwickelt, welches Zustände auf Objekte abbildet. Habe festgestellt, dass mein Datenmodell transportfähig ist und dass es egal ist, an welcher Stelle das Datenmodell initialisiert wird. In meiner derzeitigen Lösung erfolgt dies alles clientseitig mit JavaScript in einer Funktion und ist unabhängig vom Markup. Es ist also soweit abstrahiert, dass es ebenso auch serverseitig implementiert werden kann, auch transparent und für den Benutzer unsichtbar. Nicht zuletzt ist mein Datenmodell beliebig erweiterbar (derzeit beschreiben 3 Attribute einen Zustand) und es sind auch beliebig viele Zustände möglich. Für mich als Entwickler ist der resultierende Code so beschaffen, dass er überschaubar, wartungsfreundlich und leicht verständlich ist (anhand des Codes ist die ursprüngliche Aufgabenstellung leicht rekonstruierbar).
Gude Tach.