Einzelnen Beitrag anzeigen

Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#1

MVC: View in View einbetten -- Kommunikation?

  Alt 24. Aug 2012, 16:15
Hallo zusammen,

habe da mal wieder eine Frage bzgl. dem MVC Pattern. Es muss ja nicht immer sein, dass die View eine Form ist, sondern es kann ja auch gut und gerne ein Frame sein, den man später dann in eine andere Form einbetten will -- ich gehe in meinen weiteren Ausführungen von einem Frame aus, aber natürlich könnte es jede andere Komponente à la TreeView oder dergleichen sein.

Meine Controller lasse ich momentan über einen Mediator miteinander kommunizieren, sodass sich diese gar nicht erst kennen, sondern eben nur Nachrichten austauschen. Aber wie schaffe ich es das mit sinnvolle mit den Views?

Meine Idee war, dass ich einen Controller, der ein Frame als View hat, eine GetView-Methode spendiere, die über ein entsprechendes Interface definiert ist:
Delphi-Quellcode:
IFrameController = interface
  function GetView(): IFrame;
end;
So kann ich von jedem Controller die entsprechende Komponente anfordern. Aber sollte ein Controller seine View nach außen geben? Wie macht ihr das denn?
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat