Cavolo avevo scritto un tema ma poi ho per errore chiuso il browser.. uff
vabbeh sintetizzo
Il bootstrapper dovrebbe solo occuparsi di configurare l'ambiente in cui girerà il resto dell'applicazione. Tale configurazione normalmente, visto anche il contesto web e l'uso del php, si limita alla definizione di alcune costanti (path e simili) e all'installazione di un autoloader per permettere di poter instanziare le varie classi del sistema senza stare, sostanzialmente, a perder tempo con include/path relative e assolute etc etc e poter fare new MyClass sapendo che l'autoloader la troverà e quant'altro.
Dopo che l'ambiente è configurato, instanzi il front controller che si preoccuperà di gestire la richiesta instanziando gli altri controller e quant'altro...
Usare il bootstrapper per instanziare "tutte le classi di cui avrai bisogno" è sbagliato, anche perché non è il suo compito...
Definito un autoloader, instanziare le classi, o meglio includere le classi, non è più un tuo problema perché l'hai già risolto. Già dire che il controller lo instanzio come singleton mi viene da chiederti "perché?", anche per le classi model e view lo stesso. Comunque per i singleton poi puoi usare una factory apposta per fare queste operazioni (che ovviamente non può essere il bootstrapper ) etc e procedi con il resto.
Scusa discorso sconclusionato, ma vado di corsa![]()
PS: tra arr['key'] e l'extract e poi $key, preferisco la prima notazione...

Rispondi quotando