Categorie
PHP

Come far comprendere al mio IDE il Dependency Injection Container

Recentemente in un mio progetto con Zend Framework 1 ho implementato Pimple, il noto DIC progettato da Fabien Potencier.
Una delle lacune di ZF1, difatti, è la mancanza di un meccanismo interno di supporto alla Dependency injection.

Il problema

In giro ci sono altri DIC ben costruiti, tuttavia la mia scelta e caduta su Pimple grazie alla sua semplicità di utilizzo ed alla sua robustezza (nochè alla fiducia sull’autore nonostante non sia un “Symfoniano”).

Tuttavia quando si lavora con Pimple ci si accorge subito di un problema, l’impossibilità di usare l’autocompletamento con l’IDE.
Difatti a causa dell’astrazione offerta dal DIC, l’IDE che sto usando (Netbeans) non capisce più quello che sta succedendo nel mio codice.
Non capisce ad esempio che $container['myService'] contiene un oggetto.

Questo per me è realmente un bel problema. Programmare senza suggerimenti sul codice e completamento automatico non è piacevole ed il mio IDE diventa inutile.

Categorie
PHP

PHP – Basi sulla Dependency Injection

Probabilmente uno dei più grandi e “moderni” problemi delle programmazione OOP sono le dipendenze.
Se desideriamo scrivere codice di buona qualità, (quindi buone applicazioni) si dovrebbe limitare il più possibile gli effetti delle dipendenze tra le nostre classi.