Streitfrage zu MVC

Status
Nicht offen für weitere Antworten.

wako

Mitglied
Hallo,

ich beschäftige mich gerade mit MVC und weiß nicht so recht, wo ich meinen Listener hinpacken soll (in meinem Fall ActionListener). Soll die View Ihren Listener kennen, also selber einen Instanzieren (oder mehrere, je nachdem) oder registriert der Controller die View beim Listener? Soll der Listener als Inner Class geschrieben werden oder nicht?
Was macht Ihr z.B. wenn bei der View ein Button ist der ein FileChooser Dialog öffnet --> Wo instanziert Ihr den FileChooser? Die Verarbeitung muss ja dann wieder der Controller übernehmen, also wenn ich zum Bsp. ne Datei auswähle, auf OK klicke und anschliesend was damit gemacht werden soll.

Ich weiß, beim Thema MVC scheiden sich viele geister, aber ich will einfach mal, wenns geht mit Begründungm, wissen wie Ihr immer an die Sache ran geht.

Noch ne blöde Frage: Wann macht MVC eigentlich keinen Sinn bzw. was für andere Designpattern in Sachen GUI Programmierung kennt ihr noch.

thx wako
 

meez

Top Contributor
Ich pack sie meist in die View als Inner-Class...(Als "kleine" Kontroller)...
Ich denke zudem bei sehr kleinen Progs macht es keinen Sinn MVC knallhart durchzuziehen...
 

AlArenal

Top Contributor
Kleine Sachen landen drin. In der Regel habe ich aber keine kleinen Sachen ;)

Wenn ich nen Listener auf das GUI brauche (MouseListener auf JTree oder so), dann lasse ich meinen Tree gleich MouseListener implementieren und mache nen

Code:
this.addMouseListener(new MyMouseListener(this));

Gerne habe ich es auch mit parametriesierten Listenern zu tun, die recht umfangreich werden können (anstatt für jeden Schmarrn einen eigenen Listener), die packe ich dann außerhalb, meist noch in ein Sub-Package "event". Sonst wirds einfach zu unübersichtlich im Code.
 
G

Guest

Gast
danke schon mal an die die geantwortet haben....bin gespannt auf noch mehr meinungen und beispiele

thx
 
B

Beni

Gast
Ich mach praktisch immer eine innere Klasse welche die Listener implementiert.

Diese Listener machen allerdings nicht gerade viel: meist rufen sie eine einzige Methode bei der Datenstruktur auf (nachdem Sie die Daten aus der GUI gezogen haben) und dort geht es dann erst richtig los 8)
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben