David De Giacomi's Blog


.NET Rocks!
Meteo
Sondaggio
Quali di questi plugin hai installato ?

Flash Player
Silverlight 1.0/2.0
Entrambi

Calendario
aprile 2024
lmmgvsd
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

Hejlsberg, LINQ, XLing, DLing e C# 3.0

Alla grande il pomeriggio mi sono rifatti con due sessioni consecutive tenute da uno dei pilastri del C#, ossia Anders Hejlsberg. Con semplicità estrema e con esempi alla mano ha dimostrato la potenza di questa nuova tecnologia chiamata LINQ (Language Integrated Query).

Un progetto nato probabilmente dalle ceneri degli Object Spaces tanto declamati nella PDC di due anni fa e poi più sentiti. In effetti la base è quella ma il tutto ha subito una radicale evoluzione e ha fatto un passo enorme in avanti anche perchè è proprio il Framework (quindi anche i compilatori) che è cambiato per supportare questa tecnologia.

LINQ è composto da due sotto-linguaggi chiamati rispettivamente DLing (il futuro ADO.NET) e XLing. Il primo per operare su basi dati come database ma anche strutture del Framework come array liste, ecc. Il secondo per lavorare su strutture dati XML. Entrambi i linguaggi consentono di effettuare query in un linguaggio simil-SQL che però in realtà a questo punto fa parte del C# che viene esteso tramite appositi namespaces. Per utilizzare LINQ è stato fatto gran uso dei Generics. Nel linguaggio sono stati implementati ulteriori operatori per rendere possibile il tutto in maniera flessibile ed efficace senza scrivere troppe linee di codice. A questo punto con questi strumenti sul tavolo credo che i DataSet così come SQLXML, e XQuery, XPath, DOM e tutto il resto se ne andranno ben presto in pensione (non li ho mai sopportati). Addirittura utilizzando XLing rispetto al DOM si ottengono guadagni prestazionali notevoli.
Neanche i DBA saranno tanto contenti sapendo che il Framework genera automaticamente in base al codice del programmatore statements SQL da inviare a SQL Server :) però da quello che si è visto tutte le istruzioni SQL sono costruite in modo ottimale e ottimizzato.
Il tutto sarà naturalmente corredato dall'Intellisense ci sarà un type checking a livello di compilazione e ridurremo notevolmente la probabilità di mandare in crash la nostra application.

Forse sono andato un po' di fretta, anche io devo andare a ristudiare tutti i concetti visti per la prima volta oggi, specialmente quelli che riguardano le nuove specifiche di C# 3.0. La base di partenza per tutti è qui:
http://msdn.microsoft.com/netframework/future/linq/default.aspx
Dove trovate video, samples, documentazione, whitepapers, tutorials, downloads, overview e altro.
Categoria: Microsoft PDC 2005
giovedì, 15 set 2005 Ore. 09.38
Archivio Posts
Anno 2009

Anno 2008

Anno 2007

Anno 2006

Anno 2005
Mappa
Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003