Microsoft bygger bro til utviklerne

Microsoft bygger bro til utviklerne

Microsofts LINQ-prosjekt gjør det lettere å aksessere og integrere data som er lagret i databaser eller xml-dokumenter.
LOS ANGELES: Etter to tiår har objektorientering etablert seg som den foretrukne programmeringsteknologien. Programmerere tar egenskaper som klasser, objekter og metoder som en selvfølge.

Men fortsatt er det ikke mulig å lage spørringer i datakilder som ikke er definert med objektorientert teknologi, som hierarkiske xml-dokumenter og relasjonsdatabaser, med programmeringsspråk som C# og Visual Basic.

- Alle programmerere bruker data. Likevel er det utrolig hvor forskjellige de to verdenene er, sier Anders Hejlsberg, såkalt Distinguished Engineer i Microsoft.

Generell tilnærming

På Microsoft Professional Developers Conference (PDC) i Los Angeles  kunne Anders Hejlsberg for første gang vise fram sitt prosjekt LINQ (.Net Language Integrated Query).

- Vi gjør spørringer til et verktøy som programmererne kan bruke på samme måte som de bruker if-utsagn i dag, sier dansken, som i sin tid skrev Turbo Pascal for Borland og som er en av nøkkelpersonene bak C#.

I stedet for å legge inn egenskaper som er spesifikke for relasjonsdatabaser eller xml, har Microsoft valgt en mer overordnet tilnærming til problemet. LINQ-prosjektet utvikler i stedet generell spørrefunksjonalitet innenfor selskapets .Net-rammeverket.

Med "Language Integrated Query" defineres et sett med standard spørreoperatorer som gjør det mulig å direkte uttrykke traversering, filtrering og projisering i alle .Net-baserte programmeringsspråk.

Endrer verden

Clemens Vasters, grunnleggeren av Newtelligence og anerkjent programmeringsekspert, ble svært overrasket første gang han så LINQ demonstrert.

- Min reaksjon var at bang, dette endrer verden. LINQ kan bli like viktig som overgangen fra prosedyrer til objektorientert programmering, eller som overgangen fra ikke-administrert til administrert kode, sa Vasters på PDC 2005.

Ifølge Vasters skriver programmere over hele verden unyttig kode fordi de må bevege seg inn på områder de ikke behersker. Paul Vick, teknisk sjef for Visual Basic (VB), er enig.

- I min verden betyr LINQ at programmererne kan arbeide med sql og xml uten måtte lære mer enn VB.

På tvers

En av fordelene med LINQ er at spørringene fungerer på tvers av databaser. Det gjør teknologien enklere å bruke enn Embedded SQL som må tilpasses ulike databaser. Med LINQ er det ikke nødvendig å kapsle inn kode for å få den til å fungere sammen med datakildene.

Til tross for at LINQ skaper høye forventninger, i alle fall internt i Microsoft-miljøet, understreker Anders Hejlsberg at prosjektet ikke kommer opp med noe trylleformular.

- LINQ erstatter ikke noe som helst. All optimalisering i sql beholdes som før. LINQ gir deg rett og slett muligheter du ikke har i dag, understreker Microsofts programmeringsguru.

LINQ-prosjektet vil legge sine resultater inn i framtidige versjoner av Visual Studio. Men en LINQ Tech Preview ble gjort tilgjengelig på PDC 2005. Det betyr at utviklere kan ta i bruk deler av teknologien allerede i dag.

Den første LINQ-koden inneholde blant annet en C#- og VB-kompilator som begge fungerer sammen med Visual Studio 2005 beta 2.