Primo post

Blog2theMax - Il futuro VB e C#: LINQ, anonymous types, e altre diavolerie

A me quello che scrive Balena è sempre piaciuto, il suo libro su VB è stato veramente un classico che non invecchia e generalmente dice cose molto serie. Questo suo post invece non mi trova d’accordo, nel senso che su alcune cose la penso come lui ma per motivi completamente ed assolutamente differenti, mentre per altre sono completamente in disaccordo, quindi butto lì anche il mio parere su alcune cose nuove della PDC.

Late Binding vs. Strong Typing: su questo sono d’accordo con Francesco, ma non ritengo che il problema sia di performance ma di scarsissima leggibilità del codice. Se infatti posso arrivare a capire che

var i = 5;

sia ancora nell’ambito della leggibilità e che usarlo per variabili con uno scope molto piccolo sia assolutamente più comodo e rapido inizio ad avere dei grossissimi dubbi su

var j = SomeObscureAndHiddenFunction();

per cui capire quale possa essere il tipo di j diventa sostanzialmente impossibile.

Linq: qui invece siamo totalmente in disaccordo. Pur avendo qualche dubbio su quello che ho letto relativamente all’implementazione (ma dato che da qui alla disponibilità dell’oggetto passeranno ancora almeno 18 mesi non mi preoccupo più di tanto) ritengo che capire finalmente, a livello di linguaggio, che debba esistere uno strato comune ed integrato di persistenza dei dati sia la cosa migliore che si potesse fare. A prescindere della tecnologia che evolve e cambia (RDO, Ado, Ado.net, Jdbc, per arrivare ad NHybernate e tutti i vari ORM) il punto comune di tutto il mio lavoro degli ultimi 10–12 anni è sempre stato quello di “prendi i dati, facci qualcosa, persista i dati”. Se lo step centrale (facci qualcosa) è cambiato in maniera radicale nel corso del tempo (linguaggi 4GL – VB6 – C#) il primo e l’ultimo invece non hanno avuto cambiamenti sostanziali, scrivevo dell’SQL 12 anni fa per leggere e scrivere i dati, scrivo dell’SQL adesso. Ma il problema non è leggere e scrivere dell’SQL (dato che con Linq comunque il discorso non cambia), è che connettere questo SQL con il linguaggio ed il “facci qualcosa” era un lavoro sporco 12 anni fa ed adesso è sempre lo stesso identico lavoro sporco, più nascosto ed automatizzato da una sequela infinita di helper e di tool di programmazione, ma sempre quello. Linq è una speranza, che questo lavoro (che s’ha da fare, sia chiaro) invece di essere un lavoro sporco diventi un lavoro pulito, annegato nel linguaggio e quindi sostanzialmente più visibile ed elegante. Come ho detto è una speranza (perchè credo che la complessità intrinseca del “leggi i dati – scrivi i dati” non sparirà), ma onestamente se alla PDC avessero presentato l’ennesimo RecordSet glorificato mi sarei un po rotto le balle (qualcuno sa dirmi una differenza *di sostanza* tra RDO, Ado, Ado.Net 1.1 ed Ado.Net 2.0????).

 

posted @ lunedì 19 settembre 2005 12:41

Print

Comments on this entry:

# re: Primo post

Left by Michele Bernardi at 19/09/2005 15:53
Gravatar
Benvenuto!!!
Si dice che chi ben incomincia é a metà dell'opera...
...Tu direi che sei a 3/4 ;-)

Ciiaaaoooo
Comments have been closed on this topic.