CodeIgniter: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
LRKalle (discussione | contributi)
m Correzioni ortografiche
LRKalle (discussione | contributi)
Riga 18:
|Lingua =
}}
In [[informatica]] '''CodeIgniter''' è un [[web application framework]] con licenza [[open source]] per lo sviluppo di [[applicazione web|applicazioni web]] in [[PHP]], basato sul paradigma MVC ([[Model-View-Controller]]), la cui prima versione pubblica è stata distribuita da [[EllisLab]] il 28 febbraio [[2006]] mentre l'ultima versione stabile (3.1.10) risale al 16 gennaio 2019<ref>{{Cita web|url=https://forum.codeigniter.com/thread-72626.html|titolo=CodeIgniter 3.1.10 Released|autore=James Parry (Project Lead)|sito=forum.codeigniter.com|lingua=EN|accesso=2019-07-11}}</ref>.
 
== Descrizione ==
CodeIgniter è famoso per la sua velocità se confrontato con altri framework PHP.<ref>{{Cita web |url=http://pr0digy.com/codeigniter/benchmark-update-static-cake-codeigniter-kohana/ |titolo=Benchmark update: Cake vs. CodeIgniter vs. Kohana |editore=Pr0digy.com |data=3 settembre 2008 |accesso=24 luglio 2009 |urlmorto=sì |urlarchivio=https://www.webcitation.org/65oNOo2JB?url=http://pr0digy.com/codeigniter/benchmark-update-static-cake-codeigniter-kohana/ |dataarchivio=29 febbraio 2012 }}</ref> In un intervento in generale a proposito di framework per PHP in generale, [[Rasmus Lerdorf]], uno dei creatori di PHP, parlando al [[frOSCon]] nell'agosto 2008, ha dichiarato che è uno dei suoi [[framework]] preferiti "perché è veloce, leggero ed infine è come deve essere un framework".<ref>{{Cita web|url=http://www.sitepoint.com/rasmus-lerdorf-php-frameworks-think-again/ |titolo=Rasmus Lerdorf: PHP Frameworks? Think Again |editore=Sitepoint.com |data=29 agosto 2008 |accesso=3 agosto 2013}}</ref>
 
Il codice sorgente di CodeIgniter vieneè mantenutopubblicato suin [[GitHub]]<ref>[https://github.com/EllisLab/CodeIgniter EllisLab/CodeIgniter · GitHub<!-- Titolo generato automaticamente -->]</ref>, dove è correntemente in fase di sviluppo la versione 4, certificata open source con [[Open Software License|Open Software License("OSL") v. 3.0]]. Le versioni precedenti la 3.0 di CodeIgniter sono invece sotto licenza proprietaria Apache/BSD-style open source license.<ref>{{Cita web|url=https://codeigniter.com/user_guide/license.html |titolo=CodeIgniter User Guide Version 2.1.4 : CodeIgniter License Agreement |editore=CodeIgniter.com |accesso=10 luglio 2013}}</ref>
 
EllisLab, società privata sita a [[Bend]] in [[Oregon]], che ha originalmente creato il framework, ha annunciato il 6 ottobre 2014 che lo sviluppo di Codeigniter sarà continuato dalla [[British Columbia Institute of Technology]]<ref>{{Cita web|url=https://ellislab.com/blog/entry/your-favorite-php-framework-codeigniter-has-a-new-home|titolo=Your Favorite PHP Framework has a new home|accesso=26 dicembre 2017|urlarchivio=https://web.archive.org/web/20141017042021/https://ellislab.com/blog/entry/your-favorite-php-framework-codeigniter-has-a-new-home|dataarchivio=17 ottobre 2014|urlmorto=sì}}</ref>.
 
Il 7 ottobre 2019 è stata fondata dai membri più attivi la CodeIgniter Foundation, società non profit che si occupa di governare e sviluppare il progetto<ref>{{Cita web|url=https://forum.codeigniter.com/showthread.php?tid=74035|titolo=CodeIgniter Foundation in place|autore=Jim Parry|sito=forum.codeigniter.com|lingua=EN|accesso=2019-07-16}}</ref>.
 
=== Caratteristiche ===
CodeIgniter è compatto (occupa circa 2 [[Megabyte|MegaByte]] di spazio su disco) e veloce nel funzionamento<ref>{{Cita web|url=http://www.tisindia.com/blog/7-best-php-frameworks-2014/|titolo=7 Best PHP Frameworks}}</ref>. La sua installazione richiede generalmente poco tempo e può essere fattasvolta senza usare la riga di comando.
 
Grazie alle sue caratteristiche può essere installato facilmente in quasi tutti i sistemi di hosting e con varie versioni di PHP. La versione 3 richiede come minimo la versione[[PHP]] 5.3.7 di PHP (5.6 consigliata)<ref>{{Cita web|url=https://codeigniter.com/user_guide/general/requirements.html|titolo=Server Requirements — CodeIgniter 3.1.10 documentation|sito=codeigniter.com|accesso=2019-07-11}}</ref>, mentre la nuova versione 4, attualmente in versione beta, richiederà la versione 7 di [[PHP]].
 
CodeIgniter può interfacciare, conper mezzo di driver, vari [[Base di dati|database]]<ref>{{Cita web|url=https://www.codeigniter.com/user_guide/general/requirements.html?highlight=requirements|titolo=Server Requirements — CodeIgniter 3.1.10 documentation|sito=www.codeigniter.com|accesso=2019-07-11}}</ref>:
 
* [[MySQL]] v.5.1+ con driver mysqli e pdo
Riga 46 ⟶ 48:
Non dispone di un motore di templating integrato, sebbene la scrittura del codice dei file [[PHP]] di template possa essere semplificato dall'uso di librerie di funzioni integrate che generano direttamente codice [[HTML5|HTML]]. Inoltre, grazie al vasto gruppo di utenti e librerie di terze parti può essere interfacciato con motori di templating per PHP esterni, come per esempio i popolari [[Smarty PHP]]<ref>{{Cita web|url=http://www.coolphptools.com/codeigniter-smarty|titolo=CodeIgniter + Smarty, Perfect Together}}</ref> e [[Twig]].
 
PrevedeCodeIgniter prevede il caching sia delle pagine web generate sia del database e meccanismi di protezione contro le minacce più comuni, come per esempio la [[SQL injection]], durante l'immissione di dati nei [[form]]<ref>{{Cita web|url=http://www.mindfiresolutions.com/blog/2018/03/pros-cons-codeigniter-framework/|titolo=Pros and Cons of CodeIgniter Framework|autore=Mindfire Solutions|sito=Blogs @ Mindfire Solutions|data=2018-03-22|lingua=en-US|accesso=2019-07-11}}</ref>.
 
Tra i punti considerabili deboli del framework versione 3.0, l'assenza dei [[namespace]] (che però consente di aumentare la velocità di esecuzione del codice e che sono previsti nella versione 4), una certa macchinosità nel test delle unit e un numero ridotto di librerie integrate<ref>{{Cita web|url=https://coderseye.com/best-php-frameworks-for-web-developers/|titolo=11 Best Frameworks Review}}</ref>. Quest'ultimo punto determina però il vantaggio delle ridotte dimensioni di installazione del framework, mentre i programmatori possono reperire librerie di terze parti con licenza [[open source]] e integrarle con poco sforzo, oppure svilupparne di proprie con relativa facilità.
 
== Note ==