Vi var så heldige at kunne tage på Fisketorvet i arbejdstiden i sidste uge, da Microsoft havde inviteret til “En dag med LINQ”, fra en udvikler skråstreg arkitekts synspunkt.
Til de uindviede kan vi kort fortælle, at Kim Harding postulerede, at LINQ var det eneste nye, der er sket i egentlig sprogudvikling i de seneste 15 år.
LINQ står for “Language Integrated Native Query”, altså muligheden for at udtrykke forespørgsler med kode, i en form der meget ligner SQL.
Forespørgsels-muligheden i sig selv er fin, men særligt muligheden for at spørge imod og på tværs af XML, objekter i hukommelsen og SQLserver er spændende. LINQ er baseret på Microsofts provider-model, hvilket lægger op til at andre kan kontribuere med drivere, fx skulle der være en Oracle- og en DB2-driver på vej.
Foredragsholderen brugte meget tid på at forklare de bagvedliggende ting, der muliggør LINQ – dvs de nye ting i .Net-frameworket, men undlod heldigvis at blive forherligende, som man ellers godt kunne frygte, når det nu var en hel dag, vi skulle bruge på emnet. Kim har fulgt LINQ i alfa- og beta-stadierne, og kunne med den baggrund give en masse gode erfaringer fra sig – vi var helt ovre i DO’s & DON’Ts-afdelingen.
LINQ er ikke svaret på alle bønner, men kan virkelig overskueliggøre og trivialisere selv komplekse forespørgsler.
Sidste session handlede om datamodeller, og brugen af LINQ i disse – primært ud fra tankegangen om objektorienterede rige domæner kontra simple procedurale datalag, hvor man tilgår databasen mere eller mindre direkte. LINQ kan bruges i begge sammenhænge, det vigtige her er at bruge tid på struktureringen.
Efter dagens gennemgang sluttede jeres udsendte af med æbleskiver og en snak om hvad vi her i Creuna kan bruge LINQ til. Vi bruger allerede et produkt, der hedder DataObjects, hvis primære mål er domænedrevne datamodeller, men i LINQ er sprogintegrationen et stort plus, og vi håber, udviklerne af DataObjects vil integrere LINQ i deres forespørgselsmetodik.
Det stod os dog også klart, at teknologien nemt (lidt for nemt) kan føre til dårlig kode, fordi det er så nemt at bruge, og herved også misbruge. Vi mener ikke, LINQ til SQL er klar til at overtage databasehåndteringen endnu, men er rigtig lækkert til forespørgsler mod objekter og XML.


Nu er det sjældent at man falder over et site uden CSS (…), men ovenstående viser blot hvordan et godt arbejde kan honoreres fra selv de meste overraskende kanter. Specielt i dette tilfælde har samarbejdet mellem frontend-udvikling og Sitecore-udvikling været tænkt ind fra starten (sammen med en del bordfodbold
Seneste Kommentarer