Come passare il controllo tra sub-controller e controllore principale in Java MVC Design Pattern?

3

Sono abbastanza nuovo in Java, ma ho fatto molte ricerche e so cos'è MVC. Tuttavia, implementare MVC in Java è stato un compito difficile. Ho seguito questo tutorial , che mi ha aiutato a capire che gli ascoltatori di eventi solitamente incorporati come una classe anonima possono essere suddivisi in una classe controller, che la rende conforme al pattern MVC.

Ora ho riscontrato un problema quando provo ad aggiungere altro codice nel design MVC. Il mio codice ha un MainController che si occupa del menu, della barra degli strumenti e del funzionamento di MainPanel. Ecco il problema:

Il MainPanel diventerà uno spazio di lavoro commutabile, in cui il componente cambierà in base all'azione dell'utente. Ad esempio: ho un componente Login che verrà inserito nel MainPanel. Dopo che l'utente esegue l'accesso, il componente di accesso viene sostituito con il componente dell'area di lavoro. Il componente dell'area di lavoro avrà quindi componenti intercambiabili a seconda del lavoro da svolgere.

Quindi la domanda è: se ciascun componente all'interno del MainPanel ha il proprio controller, come faccio a passare il controllo al controller principale e viceversa? Cioè, se un utente fa clic sul pulsante Accedi, (presumendo che l'accesso sia andato a buon fine) qual è il modo migliore per chiamare il MainController per istruire MainPanel a cambiare componente da Login a qualcos'altro?

Domanda bonus: se devo passare il controllo da LoginController per dire il controller dell'area di lavoro, devo sempre passare attraverso il MainController, o c'è un modo per comunicare direttamente?

Ecco un diagramma di classe UML per descrivere ciò che ho ad un livello elevato:

    
posta user3804927 14.11.2014 - 11:55
fonte

0 risposte

Leggi altre domande sui tag