loader

CodeIgniter – Un framework di tutto rispetto

Arriva un momento, nel percorso lavorativo di un programmatore Php, nel quale si avverte la mancanza di un framework che possa semplificare la gestione di flussi più o meno complessi.

I così detti framework contengono metodi e funzioni in risposta ai problemi più comuni, quindi è facile imbattersi in uno di questi, oggi si parla di CodeIgniter 3.1, perfetto per chi ha necessita di scorciatoie per le operazioni più comuni.

Al contrario di framework molto più potenti CodeIgniter (CI) è nudo e crudo come un qualsiasi script php, sarà onore del programmatore “aggiustarlo” per le proprie esigenze.

La semplicità d’uso ha reso possibile la diffusione a macchia d’olio, infatti su molti progetti (medio/piccoli) si ricorre a questo framework, anche perchè risulterebbe scomodo creare una sito web con Laravel – Symfony – Yii etc, in quanto molto esosi di risorse.

Basti pensare alla solo installazione dello stesso: CodeIgniter una volta decompresso pesa solo 2.4Mb contro i 67 di Laravel, una bella differenza che ci fa capire subito un paio di cosette:

– CodeIgniter farà tutto quello che vogliamo, a patto di scrivere di proprio pugno il codice necessario ad effettuare le operazione.

– Non genera codice al posto nostro (a patto di non scrivere noi un comando adibito a farlo, quindi si torna al punto uno)

– Nonostante sia piccolo è molto potente, versatile e facilmente utilizzabile

Alcune caratteristiche:

  • Leggero
  • Veloce
  • Facile implementazione
  • Non necessita particolari setting del server
  • Subito operativo

Cosa richiede per essere sfruttato al massimo?

  • Buona conoscenza del linguaggio PHP
  • Buona conoscenza del paradigma MVC
  • Buona conoscenza di base dei server
  • Ottima conoscenza del progetto da creare

Cosa potrebbe essere utile implementare?

  • Sicuramente un buon Template Engine
  • Un sistema di autenticazione
  • Un sistema efficace di caching
  • Sviluppare alcuni helpers indispensabili per il corretto e comodo utilizzo dello stesso
  • Un buon sistema di API (si potrebbe integrare con Slim).