Ich arbeite ziemlich oft mit ASP.NET MVC (und anderen webbasierten MVC-Implementierungen), aber das ist etwas, dessen ich mir nie sicher war: Sollten Controller und Ansicht kommunizieren?
Natürlich sollte der Controller auswählen, welche Ansicht verwendet werden soll, aber was ich meine, sollte der Controller Daten an die Ansicht übergeben? Wenn die Ansicht Daten vom Controller erwartet, sind sie meiner Meinung nach effektiv als Paar (Controller, Ansicht) miteinander verbunden. Stattdessen muss die Ansicht normalerweise mit dem Modell selbst kommunizieren und von jedem Controller unabhängig sein.
Habe ich den richtigen Ansatz oder gibt es keine richtige Antwort? Ändert sich die Antwort bei der Arbeit im Web im Vergleich zu anderen Umgebungen? Ändert sich die Antwort, wenn Sie das Konzept einer stark typisierten Ansicht haben (wie in ASP.NET MVC) oder nicht?