[Python] Consiglio Web Framework versatile e adatto a sviluppare il sito ad una community

Daniele Varrazzo piro a develer.com
Lun 20 Ott 2008 18:44:18 CEST



On Mon, 20 Oct 2008 18:07:28 +0200, Agosto Alessandro <the.6one6 a gmail.com>
wrote:
> 
> Giorno a tutti,
> sono nuovo della ML e da un paio di mesetti mi dedico pienamente allo
> studio di Python.
> Premetto che non voglio scatenare flame di alcun tipo, solo avere
consigli
> da chi più esperto :D .

Il rischio c'è... :)

> Ultimamente ho dato una occhiata ai web framework poichè avrei
intenzione
> di sviluppare un sito per una community online. Il sito in questione
> dovrebbe avere un forum, una chat, un sistema di autenticazione e
dovrebbe
> essere facilmente ampliabile (quindi senza dover riscrivere praticamente
il
> sistema per ogni nuova implementazione). Mi piacerebbe fosse anche
> facilmente utilizzabile con Ajax/comet.

Penso che ormai ci si stia orientando tutti verso Django, che ha le
caratteristiche di semplicità di ampliamento che desideri. Potresti non
trovare tutto già pronto (un forum, una chat) come ti potrebbe capitare in
PHP, ma frse qualcosa comincia ad esserci. Qualcuno ha informazioni più
puntuali?

Django non ha una libreria JavaScript di preferenza: puoi usare quella che
preferisci. Mette a disposizione degli strumenti comodi per l'interazione
lato server necessaria nell'AJAX, per esempio è facile serializzare in
JSON gli oggetti che gestisce.

Ho letto qualcosa di progetti di integrazione comet, ma ne so poco (ho
usato Django solo con web server che spediscono il content-length
nell'header, quindi si aspettano una pagina completa da Django. Non ho mai
dovuto integrare Django con un web server comet-abile).

> Tempo addietro guardai Twisted+Nevow ma l'ho trovato abbastanza difficile
> da utilizzare poichè entrambi forniscono funzioni per creare il file
.tac
> e altre varie cose che mi hanno più che altro disorientato.

È un gran bel framework, ma probabilmente di livello più basso di quello
che ti serve per sviluppare rapidamente un sito. È probabilmente più
adatto a creare servizi di rete.

> Poi leggendo della potenza di twisted ho pensato che non fosse adatto a
> una community ovvero che sarebbe sprecato (mia opinione), ripiegai quindi
> su Pylons con la quale stò provando a scribacchiare qualcosa.
> Vorrei un vostro parere su un buon framework che regga bene anche nel
caso
> cui l'utenza dovesse crescere, che sia aggiornabile senza troppi scossoni
e
> che in poche parole sia 'comodo' ed efficente. Non cerco qualcosa di
'già
> fatto' poichè adoro python, ma cerco qualcosa di facilmente gestibile
dal
> lato tecnico (e adatto all'obbiettivo).
> 
> Chiedo scusa se mi sono dilungato troppo, ma ho preferito chiarire
> parecchie cose per esprimermi :)
> 
> A presto!
> Ps. database = postgresql gestito tramite sqlalchemy che sto
> approfondendo.

Django ha un suo ORM, molto più scarno di SQLAlchemy. Uno dei progetti
più grandi che ho sviluppato in Django necessitava di un'interazione col
DB piuttosto complessa ed ho usato SA come ORM (anche io sono patito di
quest'ultimo). Django non ha problemi a usare oggetti SA, ma quello che ci
perdi è l'interfaccia amministrativa, che fa risparmiare un bel po' di
lavoro (praticamente hai gratis le viste amministrative per gestire
creazione, inserimento e modifica dei record). A occhio e croce, nel tuo
progetto perdere l'interfaccia amministrativa è un grosso handicap mentre
avere la piena libertà di design del DB che SA ti offrirebbe non ti
porterebbe vantaggi concreti. Quindi, se dovessi orientarti verso Django,
ti consiglierei di lasciar perdere SA, per questo progetto.

-- 
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com


Maggiori informazioni sulla lista Python