domenica, novembre 26, 2006

ASP.NET 2.0

Premetto, prima di addentrarmi nella scrittura di questo post, che sono un felice programmatore PHP da 7 anni e che non mi permetterei mai di scrivere su di un prodotto senza averlo utilizzato. Ecco perché ho provato sul campo ASP per progettare un sito dopo aver letto il manuale della Hoepli (più di 1000 pagine).
Certamente, non conosco ASP che da 3 settimane, ma qualche idea me la sono fatta.
Non intendo addentrarmi nella politica, per cui terrò tutte le considerazioni del tipo software libero vs. software propietario fuori da questa mia elucubrazione.
Credo che il pregio fondamentale della nuova souite Microsoft per la programmazione consista nell'ordine: la struttura del sito, la disposizione dei file, tutto è già deciso sin dalla fase di progettazione dell'ambiente e conviene rispettare questa struttura, ogni cosa al suo posto, per un disordinato come me è davvero una cosa buona.
XML, è usato nel modo giusto, ci si possono fare i file per rendere il sito multilingue, per la configurazione del sito, per esplicitare le dipendenze e la navigazione nel sito, fino alla gestione degli utenti. Insomma ogni cosa sia ragionevolmente fattibile con XML.
Ci si potrebbero fare anche i database, ma nessun programmatore sano di mente penserebbe mai a una scelta implementativa di questo genere.
Ho apprezzato anche l'idea che il codice venga tenuto fuori dal codice HTML, i linguaggi enbedded portano ad una accozzaglia di codice che per forza di cose, all'aumetare della complessità, diventa caotico. Con ASP.NET ogni pagina, è costituita da due file: uno di tipo aspx, l'altro di tipo cs o vb a seconda del linguaggio scelto.
Ho apprezzato l'integrazione con il database (se così si può chiamare) ACCESS. Per un sito che normalmente viene aggiornato da una sola persona non ha senso disturbare un DBMS vero è proprio. Questa soluzione ha il privilegio di fare risparmiare qualche soldino nelle spese di server.
Ho trovato molto affascinante, e per la verità faticoso ad abituarmici visto la mia forma mentis dovuta ad anni di programmazione in un ambiente diverso, il meccanismo del Postback. Ogni form, in ogni pagina, punta alla pagina stessa. Sicuramente contribuisce a tenere gli script puliti e ordinati.
Purtroppo però ci sono anche dei lati negativi, per cui non introdurrò ASP.NET nella mia catena produttiva in tempi brevi.
Il meccaniscmo di interfacciamento col DB è molto affascinante ma gestisce troppi pochi tipo di dati. Se voglio inserire una immagine in un database oppure voglio associare una immagine ad un record di una tabella deva andare a scrivere la logica di mio pugno.
Svegliamoci per favore, siamo nel 2006, non esiste alcun sito che non associ immagini ai post, anche i blog lo fanno. Non prevedere l'automatizzazione di questo tipo di meccanismi, è stata una grave leggerezza da parte di Microsoft inltre la scrittura del codice di interfacciamento attraverso ADO è molto più prolissa se paragonata alle 3 funzioni che in PHP permettono di interfacciarsci a praticamente ogni tipo di DBMS.
Altro lato negativo riguarda la comunità di sviluppatori, molto meno propensa, rispetto a quella dei programmatori PHP alla condivisione del codice. Così facendo si impara pià lentamente e i programmatori di linguaggi più liberi saranno sempre un passo avanti.
Per concludere il cammino è interessante, decisamente interessante, ma da qui alla praticità c'è ancora tanta strada da percorrere.