[Python] impressioni su Django

Manlio Perillo manlio_perillo a libero.it
Lun 13 Nov 2006 21:10:32 CET


Sandro Dentella ha scritto:
> On Mon, Nov 13, 2006 at 08:29:32PM +0100, Manlio Perillo wrote:
>> Ieri ho cominciato a studiare Django.
> 
> io ho cominciato un mesetto fa...
> 
>> 1) Credo ci si sforzi troppo di seguire il principio DRY
>>    (Dont Repeat  Yourself).
>>    Infatti nel model ci sono cose che non dovrebbero esserci.
> 
> ad esempio?
> 

Nel model compare la classe Admin in cui sono presenti dei dettagli che
riguardano la "view".
Lo stesso nella definizione dei vari elementi (come ForeignKey), in cui
ci sono delle cose che riguardano la view.

>> 2) Django non è nato come framework general purpose, ma lo è diventato
>>    grazie ad una buona politica "commerciale" (IMHO) e ad una
>>    architettura buona in partenza.
>>    Questo temo se lo porterà dietro per sempre.
> 
> in cosa noti che non sia nato "general purpouse"? 
> 

Lo dicono loro stessi: è nato per servire il loro sito di notizie online
(e si vede che è orientato a siti di questo tipo, con un enfasi alla
cronologia degli ogetti, alla sezione media, etc).

>> 3) L'ORM è limitato
>>    (ma sembra che stiano lavorando per integrare SQLALchemy).
> 
> io ho cercato e non mi pare che ci sia nulla più che la mail in cui
> Roberto Munn dice che ci avrebbe lavorato. Anche nella lista di sqlalchemy
> qualcuno gli ha chiesto delucidazioni sullo stato e lui non ha risposto, mi
> pare impegnato in altre cose.
> 
> E` vero che anche a me sembra un ORM un po' limitato.
> 

Si, non mi sembra ci sia supporto per le join.

SQLAlchemy ha proprio tutto (ho cominciato a studiare anche questo ed ho
subito notato come sia migliorata la documentazione dalla versione
precedente).


>> 4) Ho avuto l'impressione che Django cerchi di favorire troppo chi non è
>>    esperto di programmazione/Python (e questo, di solito è male).
> 
> ??? Cosa ti da questa impressione? il fatto che fornisca molte funzioni
> pronte all'uso(vedi le generic-views)? mi pare solo una cosa bella anche per
> chi programma...
> 

Nella documentazione ci sono spesso delle note riguardo chi si avvicina
a Django senza avere esperienza in Python (web designer puri).

>> Il sistema di templating di Django mi ha fatto una buona impressione.
> 
> Il sistema funziona bene la sintassi a me non piace. 

Io sono abituato alla sintassi di Nevow e questa mi sembra si avvicini
molto (anche se radicalmente diversa).

> Filtri e tag sono
> immediati da programmare ma medito il passaggio a cheetah che mi pare molto
> più pulito.
> 

cheetah ha il supporto per estendere i template di base?

>> Anche la gestione dei form (in una libreria che sto sviluppando per
>> Nevow io seguo un approccio simile ;-)).
> 
> Sta per essere integrata la versione nuova dei form (già annunciata nella
> lista di sviluppo che è ancora più potente).
> 
> A me ha fatto una *ottima* impressione e da quando ho iniziato ad usarlo mi
> rendo conto di come sia bello e pulito fare ogni genere di operazione. Mi
> pare molto bello anche il sistema di test/documentazione, ottimo l'uso delle
> docutils e del formato reST per la documentazione. Bello anche l'uso
> di pydispatcher (che io non avevo ancora mai usato).
> 


Dove viene usato?
Non ho ancora avuto modo di leggere i sorgenti (ho solo letto la
documentazione e creato il primo esempio sul tutorial).

Un'altra cosa: Django gestisce solo una connessione alla volta al database?



Saluti  Manlio Perillo


Maggiori informazioni sulla lista Python