So richtig einschätzen kann ich es noch nicht, auch wenn ich nach der Lektüre einiger Artikel da ein großes Potential sehe. Und immerhin ist es eine der Hauptneuerungen der 3.5er Version des .NET Frameworks. In der Tat frohlocken die Technologieführer über Anders Hejlsbergs "Baby" und preisen es als die Neuerung. Wovon ich spreche? Na, Language Integrated Query LINQ natürlich!
Was soll ich darüber viele Worte verlieren, das haben bereits zahlreiche anderen Blogs und Zeitschriften vor mir getan. Ich zähle nun mal nicht zu den Geeks, die alle neuen Features sofort auf Herz und Nieren testen und dann an vorderster Front als einer der ersten davon berichten können. Stattdessen habe ich schon seit einigen Tagen versucht einen ersten Einstieg in diese neue "Abfragesprache" zu finden. Die Möglichkeit ohne Mehraufwand beliebige Datenquellen abzufragen klingt jedenfalls interessant und nach dem ich mir dann die Screencasts von Dariusz Parys angesehen hatte (übrigens: sehr empfehlenswert!) habe ich etwas intensiver gesucht - und LINQPad gefunden.
Das erste was mir an dem Programm gefällt: Keine 2 Megabyte groß, eine einzelne EXE-Datei und ohne Installation sofort ausführbar. Das animiert zum Testen :-). Und damit man das auch ohne Vorwissen schnell kann wird sowohl ein 5-Minuten-Rundgang in Form von Beispielquerys mitgeliefert als auch rund 200 Beispiele aus dem Buch C# 3.0 in a Nutshell. Die Bedienung des Programms ist intuitiv und logisch, die Bedienelemente auf das nötigste beschränkt. Ein besonderes Highlight ist eine Methode "Dump", die als Erweiterung zur Verfügung steht und an eigentlich jeden Typ angehängt werden kann. Nützlich ist das um umständliche Behelfskonstrukte zu vermeiden und den Inhalt eines Typs einfach auszugeben.
Hier ein Auszug aus dem Beispiel "The Big Dump", dass auch mitgeliefert wird (hier in C#, LINQPad unterstützt allerdings auch VB):
Code
123.Dump();TimeZoneInfo.Local.Dump();new[] { 11, 5, 17, 7, 13 }.Dump("Prime numbers").Where (n => n > 10).Dump("Prime numbers > 10");
Ausgabe
Das erleichtert das Testen eigener Abfragen natürlich enorm; und da man eigene Datenbankverbindungen ganz im Stil des SQL Management Studios ebenfalls einbinden kann um direkt live darauf zuzugreifen, umfasst LINQPad ein recht schlankes und dennoch nützliches Tool um sich sowohl mit LINQ anzufreunden als auch Querys ohne den ganzen Overhead eines eigenen Projektes zu erstellen und zu testen.
Fazit
Ich vermisse im Moment noch das Syntax-Highlighting des eingegebenen Quellcodes. Auch wäre die Intellisense-Hilfe sehr nützlich. Bin nun mal von Visual Studio verwöhnt worden was das angeht. Beides soll aber in einer der nächsten Versionen auch in LINQPad integriert werden. Die Dateigröße, die Tatsache das es ohne Installation auskommt und sich zudem auch noch selbständig updated runden das Programm vom Handling her ab. Die Oberfläche mag manchem etwas spartanisch vorkommen, genügt für diesen speziellen Einsatzzweck aber völlig. Ich werde also mal ein wenig mit dem Tool und natürlich auch LINQ spielen und dann evtl. hier über meine eigenen Erfahrungen damit berichten. :-)