dotnetpro 02/2010
Schwerpunkt: LINQ

Sie sind noch kein Abonnent? Dann wird es aber Zeit!
Weiter zur Abo-Bestellung.
Sie haben bereits ein Abonnement? Dann
registrieren Sie es jetzt online!
Zahlreiche kostenlose Online-Artikel finden Sie
hier.
Einzelheft bestellen
Aktuell
Wolken in Azur und Altrosa
(Seite 3)
Irgendwie geht mir das ganze Gedöns schon wieder auf denWecker. Es ist einfach zu viel. Zu oft. Übertrieben. So ging’s mir
schon früher.
Tilman Börner
Aktuell
(Seite 6)
Mono 2.6, MonoDevelop 2.2 und Moonlight 2.0 - in-Step unterstützt Subversion - Neue Version von DxGrid u.v.m.
Schwerpunkt
Starke Typen
(Seite 10)
Die kanonische Abbildung von XML-Schemas auf .NET-Datenstrukturen ist mittels des XML-Schema-Definition-Tools
zwar möglich, für den Entwickler jedoch nicht sonderlich komfortabel.Mit LINQ to XSD bietet Microsoft nun eine
Programmierschnittstelle, welche mithilfe von XSD die Vorzüge von LINQ mit der starken Typisierung von XML koppelt.
Andreas Heil
LINQ + LINQ + LINQ = PLINQ
(Seite 19)
Seit dem .NET Framework 3.0 bietet LINQ eine beliebte Möglichkeit, Daten direkt in der Programmiersprache
abzufragen. .NET 4.0 fügt mit PLINQ die Möglichkeit hinzu, Daten parallel zu ermitteln und alle Prozessorkerne
zu nutzen. PLINQ ist fast so einfach wie LINQ – aber nur fast. Denn es gibt einige Stolpersteine, wie sie
für parallele Programmierung typisch sind.
Bernd Marquardt
LINQ to Events
(Seite 26)
Das Reactive Framework eröffnet neue Möglichkeiten des asynchronen Programmierens und erweist sich als
eine der spannendsten Spracherweiterungen, die es ins .NET Framework schaffen könnte. dotnetpro stellt
das Reactive Framework vor und erläutert, wie es die Anwendungsentwicklung beeinflussen wird.
Andreas Heil
Bücher
VIP-Tipp: Unbedingt lesen!
(Seite 34)
Im VIP-Tipp stellt ein Experte Bücher vor, die er persönlich für besonders lesenswert hält. Der VIP-Tipp soll
als Entscheidungshilfe für Softwareentwickler bei der Auswahl der passenden Fachlektüre dienen.
Die Aktion ist eine Kooperation zwischen der Fachbuchhandlung Lehmanns (www.lob.de/viptip), dem Seminaranbieter
Professional Developer College (www.prodevcollege.de) und der dotnetpro (www.dotnetpro.de).
Joachim Pich
Buch für die Entwickler von morgen
(Seite 36)
Ein C64 oder gar dessenVorläufer konnten von Haus aus fast nichts.Man konnte ihnen allerdings so einiges beibringen. Erste Erfolgserlebnisse schufen dieMotivation, die Programmierung als Hobby weiterzubetreiben oder gar zum Beruf zu machen. Heute kann ein Jugendlichermit seinemersten Computer ins Internet gehen, dort Freunde treffen und gemeinsammit ihnen spielen.
Bernhard Lauer
Sandbox
Software, meisterhaft
(Seite 40)
Wäre es nicht ideal, wenn Sie sich einen neuen Entwickler für Ihr Team im Laden aussuchen könnten? Volle Regale, an denen Sie als Teamleiter oder Geschäftsführer vorbeischlendern.
Ralf Westphal
Praxis
Weltweite Workflows
(Seite 100)
Ein Workflow Service basiert auf der WCF, ist über SOAP ansprechbar und implementiert einen WF-Workflow.
Der Application Server „Dublin“ bietet dafür den passenden Application Host. Damit steht Entwicklern alles
zur Verfügung, was sie benötigen, um lang laufende Prozesse und Composite Services aufWindows zu erstellen.
Damir Dobric
Chronik der Ereignisse
(Seite 108)
Die Datenberge wachsen. Und mit ihnen wächst die Bedeutung von DataWarehousing und Business Intelligence.
dotnetpro erstellt in dieser Serie eine professionelle DWH/BI-Lösung mit dem SQL Server 2008. In dieser Folge
erfahren Sie, wie Sie die Logging- und Auditing-Prozesse eines DataWarehouses implementieren und über
SSIS-Templates standardisieren.
Klaus Aschenbrenner
Interface Segregation Principle
(Seite 116)
Der Stecker für den Monitor muss nicht auch für den Drucker passen. Der Monitorstecker ist auf eine einzelne
Aufgabe spezialisiert, und das ist gut so. Das Gleiche sollte für Softwareschnittstellen gelten. Spezialisierte Interfaces
verringern die Kopplung zwischen Klassen und erleichtern die Testbarkeit.
Stefan Lieser
Thumbnails Marke Eigenbau
(Seite 42)
Moderne Digitalkameras liefern pro Foto mehrere MByte an Daten. Für flott arbeitende Bildverwaltungsprogramme
sind verkleinerte Vorschauanzeigen unerlässlich.
Andreas Maslo
Mit mehr Kraft
(Seite 52)
Mit den Betriebssystemen Windows 7 und Windows Server 2008 R2 ist auch die Windows PowerShell 2.0 erschienen.
Remoting, Jobs, Ereignisse, Transaktionen sowie eine einfachere Integration von C# und Visual Basic sind
interessante Funktionen, die in der ersten Version der Shell fehlten.
Holger Schwichtenberg
Model, aber nicht oberflächlich
(Seite 61)
Zu den großen Vorteilen von WPF und Silverlight gehört die Möglichkeit, das Oberflächendesign von der Anwendungslogik
und den Daten völlig zu entkoppeln. Damit aber der Oberflächendesigner nicht doch auf C#-Code
zurückgreifen oder der Programmierer die Controls kennen muss, hilft ein Entwurfsmuster.
Joachim Fuchs
Mouse over Silverlight
(Seite 70)
Visualisierungen wie der allseits beliebte Mouseover-Effekt lassen sich für Silverlight-Steuerelemente direkt im
XAML-Code definieren. In Kombination mit Expression Blend 3 sind noch weiter gehende Effekte möglich.
So lassen sich auch eigene Zustände, Zustandsübergänge und Zustandsgruppen definieren.
Joachim Fuchs
Erst trennen, dann vereinen
(Seite 74)
Wer Anwendungen verteilen will, muss ihre Schichten trennen. Aber wenn der Client die Geschäftslogik nicht kennt,
kann er nicht mit ihr arbeiten. Dieses klassische Problem löst das neue Framework WCF RIA Services mithilfe von
automatisch generierten Proxyklassen für den Client. So lassen sich verteilte Anwendungen auf der Basis von Silverlight
und ASP.NET entwickeln.
Wim Nienkerke
Sag mir, wie Du heißt ...
(Seite 81)
…und ich sage Dir, wo Du herkommst. So könnte das alte Sprichwort leicht abgewandelt lauten, um den Inhalt dieses
Artikels zu beschreiben. Es ist zwar nicht schwer, den Typ eines Laufwerks per Windows-API zu ermitteln, doch der Teufel
steckt - wie immer - im Detail. Das API informiert nämlich nicht umfassend. dotnetpro schließt die Informationslücke.
Klaus Schlotmann
.NET fürs iPhone
(Seite 84)
Mit MonoTouch steht jetzt eine Bibliothek für die Entwicklung von iPhone-Anwendungen auf .NET-Basis bereit.
Hier erfahren Sie alles, was Sie wissen müssen, um eigene Programme für Apples iPhone zu entwickeln.
Andreas Gerlach
Neues aus der Thread-Forschung
(Seite 94)
Software Transactional Memory (STM) vereinfacht den Zugriff auf gemeinsam genutzte Datenstrukturen in Multithreading-Anwendungen. Microsoft experimentiert schon länger mit STM und bietet nun erstmals eine spezielle .NET-Version an, bei der STM direkt in die CLR integriert ist.
Klaus Aschenbrenner
CD-Inhalt
CD-INHALT
(Seite 50)
Controls
Seit Visual Basic 1.0 gehören Kontrollelemente zum Entwickeln von grafischen Oberflächen dazu. Heutzutage
sind Controls aber nicht nur für Desktop-Anwendungen verfügbar. Dank ASP.NET,AJAX und Silverlight spielen
Controls auch bei der Entwicklung vonWebanwendungen eine große Rolle.
Mono
Mono-Tools „de luxe“
(Seite 118)
Ein minimales Linux zusammenklicken, Installationspaket der eigenen Anwendung erzeugen, Paket übertragen,
Link weitergeben. So einfach kann die Distribution sein.
Jan Waiz,
Daniel Nauck
Tipps und Tricks
Kochen mit Patrick
(Seite 120)
Der ASP.NET View State arbeitet eigentlich vollautomatisch. Es gibt allerdings drei gute Gründe, sich trotzdem mit dem View
State auseinanderzusetzen. Hier gibt’s die theoretischen Grundlagen und danach einen schmackhaften Gemüseburger.
Patrick A. Lorenz
Tools für Webentwickler
(Seite 124)
Für Webentwickler gibt’s diesmal Hilfsmethoden für den Zugriff auf View State und Session State von ASP.NET-Seiten. Und als kleines Extra GetChildControlsByType.
Patrick A. Lorenz
Leser helfen Lesern
(Seite 126)
Ihr Programm rechnet falsch? Ihr Compiler spricht keinWort mehr mit Ihnen? Sie vermissen wichtige Themen in der dotnetpro? Dann besuchen Sie unsere Newsgroups. Hier finden Sie Antworten auf Ihre Fragen. Hier treffen Sie Mitstreiter und Leidensgenossen. Hier können Sie der Redaktion Ihre Anregungen mitteilen.
Basic kompakt
(Seite 128)
Die Programmiersprache Basic erfreut sich nach wie vor großer Beliebtheit. Dies zeigt sich unter anderem daran, dass
immer wieder neue Basic-Dialekte das Licht derWelt erblicken. Drei dieser Dialekte werden hier vorgestellt.
Andreas Maslo
Architektur
Alles verstanden?
(Seite 130)
Idealerweise sagt der Name einer Funktion, was sie tut oder was sie zurückgibt. Bei einem sogenannten Fluent
Interface wird das wesentlich weiter getrieben:Mehrere aneinander gekettete Methodenaufrufe formen einen Satz, der sowohl für Menschen als auch für den Compiler gut verständlich ist.
Ralf Westphal