MVC ist tot, lang lebe MOVE
Kommentare

Conrad Irwin lässt sich in seinem Blog zum Ende von Model-View-Controller aus: Das Design Pattern sei überkommen und der Controller sei der Ort geworden, in dem alles reinkommt, was nicht View oder Model ist.

Bei Move finden Events und Operationen eigene Bereiche, sodass sie sich nicht mehr einen unübersichtlichen Controller teilen müssen. En detail spaltet sich MOVE wie folgt auf:

  • Models kapseln alles, was die Anwendung weiß
  • Operations kapseln alles, was die Anwendung tut
  • Views vermitteln zwischen der Anwendung und dem Anwender
  • Events verbinden alle Komponenten sicher miteinander

Als Operation gilt beispielsweise der Login eines Users: Im ersten Schritt holt man die Login-Daten und im zweiten vergleicht man sie mit dem User-Model in der Datenbank. Operations verändern das Model, stellen die richtigen Views dar und reagieren auf die richtigen Events. Jede Sub-Operation soll idealerweise unabhängig von ihrer Eltern-Operation funktionieren können.

View-Items senden bei einer User-Interaktion wie loginAttempt ein Event aus. Nach dem Login sendet das Model auch ein Event aus, das den currentUser ändert.

Das Event-Listening ermöglicht MOVE die Umkehrung der Kontrolle: Models können Views updaten ohne dass die Models direkt mit den Views verbunden werden müssen. Diese Abstraktion verbindet die Komponenten, ohne dass sie sich gegenseitig blockieren.

Wenn Ihr den MOVE-Ansatz interessant findet, findet Ihr hier noch die ausführliche Version des Artikels und eine Grafik, die das Design-Pattern veranschaulicht.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -