Domanda

Sto lavorando a uno script di siti Web e attualmente ho un front controller, che determina cosa caricare (ad es. quali moduli / estensioni e controller) in base all'URI. è un buon approccio? Sto usando PHP se è importante. Mi chiedo solo se non è il lavoro del front controller ...

È stato utile?

Soluzione

Il metodo che uso in realtà coinvolge due controller.

C'è un front controller che controlla l'arrivo iniziale della richiesta. Quindi c'è il Page Controller specifico per la pagina corrente (a seconda dell'URI). Il Front Controller gestisce il caricamento del Page Controller corretto.

Compito del Page Controller è accedere al Modello (per l'accesso al DB) e ad altre classi per comporre i dati per la visualizzazione della pagina.

Direi che il Front Controller non dovrebbe mai fare qualcosa di specifico per un URI e dovrebbe rimanere il più generico possibile in modo che possa essere riutilizzato in modo efficiente.

Altri suggerimenti

Questo è il modello del front controller in breve e framework come CakePHP e Zend (credo ) fanno più o meno la stessa cosa (come fa Rails, ecc.).

Il mio unico pensiero sarebbe se delegare o meno moduli di caricamento ed estensioni ai controller che ne hanno bisogno o fare riferimento a loro in quanto il front controller di solito gestisce le azioni a livello di applicazione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top