TurboGears: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
m Bot: inserimento portale (via JWB) |
||
(25 versioni intermedie di 20 utenti non mostrate) | |||
Riga 1:
{{W|informatica|ottobre 2011}}
{{F|linguaggi di programmazione|ottobre 2011}}{{Software
| Sviluppatore =
| SistemaOperativo =
| Genere = web framework
| SoftwareLibero =
| SitoWeb =
}}
'''''TurboGears
== Turbogears ==▼
▲TurboGears e' un framework per la creazione di applicazione web ed e' composto, nativamente, da varie librerie python come MochiKit , SQLObject , CherryPy, Kid e Nose.
Quando, alla fine del
TurboGears
▲E' stato creato nel 2005 da Kevin Dangoor come web framework per l'ancora inedito prodotto Zesty News.
▲Quando, alla fine del Settembre 2005, fu rilasciato come prodotto open source, ricevette piu' di 30000 download.
▲== Componenti di Turbogears ==
▲TurboGears e' progettato rispettando il pattern MVC, model-view-controller, come Struts or Ruby on Rails , e pensato per rendere piu' rapido lo sviluppo di applicazioni web e per renderne piu' facile la manutenzione.
Ecco un elenco dei principali componenti, che vengono installati nativamente, di TurboGears:
* SQLObject (
* SQLAlchemy
* Kid (
* Genshi
* CherryPy (
* Pylons / Paste sostituiranno CherryPy come controller nelle future release di turbogears.▼
* MochiKit
* Nose come libreria per i test.▼
▲SQLObject (e' il Model): si interfaccia al database, trasformando le chiamate ad oggetti in chiamate relazionali e viceversa (ORM). Puo' creare da zero il database o interfacciarsi ad uno esistente.
Sistemi di template diversi da Kid possono essere usati tramite un sistema di [[plugin (informatica)|plugin]]. Attualmente esistono plugin per Genshi, Cheetah
▲SQLAlchemy puo' essere usato come alternativa a SQLObject, ma dalla versione 1.1 diventa l'ORM di default.
▲Kid (e' il View): e' la parte di frontend, cio' che viene renderizzato, dove tutti i templates sono file XHML o XML. Permette l'iclusione di codice python usando le specifiche XMLish.
▲Genshi e' un'alternativa a Kid, ma diventera' la tecnologia di default per i templates dalla versione 1.1 di turbogears. E' molto simile alla sintassi del kid. Per ulteriori dettagli vedi il paragrafo 'template plugin'.
▲CherryPy (e' la Controller): e' un middleware che permette di programmare applicazioni web scrivendo gestori di eventi(event handler) che ritornano i dati (nel caso di Turbogears) al template.Questi possono essere anche in formato JSON.
▲Pylons / Paste sostituiranno CherryPy come controller nelle future release di turbogears.
▲MochiKit e' una parte opzionale di turbogears. E' una libreria Javascript che permette lo sviluppo con questo linguaggio in maniera piu' Pythonica. E' soprattutto usata per implementare funzionalita' Ajax e fornisce un'interfaccia asincrona per gli stream di dati forniti in formato JSON.
▲Nose come libreria per i test
▲== Templates plugin ==
▲Sistemi di template diversi da Kid possono essere usati tramite un sistema di plugin. Attualmente esistono plugin per Genshi, Cheetah , Django templates , Mako , and Jinja
▲Nello stesso sistema possono essere usati diversi tipi di template.
== Storia ==
Nel
Nel
Alla fine del 2008 Turbogears puo' vantarsi di avere una comunita' attiva con piu' di 3000 utenti sulla sua mailing list, di avere un libro edito da Prentice Hall e pubblicato nel Novembre del 2006 e di avere progetti open source e progetti proprietari attualmente utilizzati nel mondo reale. Lo sviluppo procede ad un ritmo moderato ma costante ed è stato alimentato anche da un recente successo di partecipazione al progetto come Google Summer of Code, organizzazione nel 2008. TurboGears 1.1 è finalmente avviato, con diverse versioni beta, nel 2008(attualmente e' ancora in beta), ed TurboGears 2 e' entrato nella fase release candidate nel mese di marzo 2009. ▼
▲Alla fine del 2008 Turbogears
== Futuro di Turbogears ==
Attualmente lo sviluppo avviene in due branch principali:
1. Il branch di TurboGears 1.x, basato sul codice originale e che usa CherryPy come web application server.
2. TurboGears 2 (trunk), che fondamentalmente riscrive le API di Turbogears 1 per riadattarle alla libreria Pylons
TurboGears 1.1 sarà una versione più recente di TurboGears 1.0, che continua ad utilizzare le stesse API. Le principali differenze fra la versione 1.1 e 1.0 sono la scelta di un differente sistema, di default, per template(da Kid a Genshi) ed un diverso ORM(da SQLObject a SQLAlchemy). La versione 1.1 serve come passaggio intermedio fra 1.0 e la versione 2.0 (basata sulla libreria Pylons).
Recentemente, tuttavia, sono stati compiuti buoni progressi per adeguare il codice di base 1.x di CherryPy 3.0 ed
Una versione stabile di TurboGears 2 dovrebbe essere rilasciata fra il primo ed il secondo trimestre del 2009.
== Note ==
<references/>
== Collegamenti esterni ==
* {{Collegamenti esterni}}
{{Framework per applicazioni web}}
{{Portale|informatica}}
[[Categoria:Linguaggi di scripting]]
▲{{Categorizzare|informatica}}
|