Front controller

modello di progettazione per software
Versione del 23 ott 2010 alle 09:11 di Brtsergio (discussione | contributi) (Rivista la frase con pro e contro della creazione di script individuali)

Il Front Controller Pattern è un modello di progettazione (Design Pattern) per software . Il modello si applica alla progettazione di applicazioni web. "Provvede un punto di ingresso centralizzato per la gestione delle richieste".[1]

Il modello front controller può essere implementato come un oggetto Java, o uno script in un linguaggio di scripting come PHP, ASP, CFML o JSP che è richiamato ad ogni richiesta in una sessione web. Lo script, per esempio una pagina index.php, gestisce tutte le operazioni comuni al framework, come la gestione delle sessioni, della cache, la validazione dell'input. In base alle richieste specifiche crea delle istanze di altri oggetti e chiama altri metodi per gestire specifiche operazioni.

L'alternativa al modello front controller è la creazione di script individuali, per esempio login.php e order.php che gestiscano le varie tipologie di richieste. Se da un lato ogni script avrebbe codice o oggetti duplicati, comuni a tutte le operazioni, dall'altro ogni script potrebbe avere molta più flessibilità nell'implementazione della gestione della specifica richiesta.

Esempi

Molti framework per applicazioni web implementano il modello Front Controller, tra cui:

Note

  1. ^ Alur et al., p. 166.

References

  • Deepak Alur, John Crup, Dan Malks, Core J2EE Patterns, Best Practices and Design Strategies, 2nd Ed., Sun Microsystems Press, 2003, pp. 650pp, ISBN 0-13-142246-4.