Ein Rückblick – trotz allem ein Grund zu feiern

.NET wird 10 Jahre alt (Teil 2)
Kommentare

Trotz .NET: Microsoft bevorzugt weiter C++
Es dauerte noch weitere eineinhalb Jahre bis am 15. Januar 2002 die Auslieferung der Version 1.0 folgte, dieses Mal ohne große Fanfaren. Wie so oft musste sie

Trotz .NET: Microsoft bevorzugt weiter C++

Es dauerte noch weitere eineinhalb Jahre bis am 15. Januar 2002 die Auslieferung der Version 1.0 folgte, dieses Mal ohne große Fanfaren. Wie so oft musste sie beim Anwender, also bei den Early Adopters unter den Entwicklern, reifen. Es folgte relativ schnell eine Version 1.1, die rückblickend betrachtet als die wahre Version 1.0 gilt. Erst mit der Version 2.0 im Jahr 2004 wurde das ausgeliefert, was sich Entwickler bei Microsoft für die erste Version vorgenommen hatten. Unter anderem Generics, ein überarbeitetes Windows Forms 2.0 und ASP.NET 2.0. Wer jedoch erwartet hatte, dass sich mit der Verfügbarkeit des .NET Frameworks auch die Entwicklungsstrategie bei Microsoft ändern würde, wurde enttäuscht. Das viel zitierte „We eat our own dog food“-Credo wurde für .NET außer Kraft gesetzt. Die Entwicklungsabteilungen von Windows und Office setzten weiterhin auf das bewährte C++. Es gab lediglich einen Versuch der .NET-Entwicklungsabteilung sich auf der Windows-Plattform zu etablieren. Auf der PDC 2003 wurden unter dem Codenamen WinFx die drei Säulen eines Nachfolgers von Windows XP und Windows Server 2000 vorgestellt, deren Oberfläche auf Managed Code basieren sollte. Diese Windows-Version trug den Codenamen Longhorn (benannt nach einem Saloon im kanadischen Wintersportort Whistler). Die drei Säulen waren WPF, WCF und die Windows Workflow Foundation (WF).

Die mit Longhorn geplante Revolution des Desktops scheiterte jedoch grandios, der Auslieferungstermin musste erst um Monate, später um Jahre verschoben werden bis die Verantwortlichen die Reißleine zogen und das offenbar überambitionierte Projekt beendeten. Die Windows-Entwickler mussten unter Hochdruck noch einmal von vorne anfangen und lieferten mit Vista einen Nachfolger ab, der als die wohl unpopulärste Windows-Version in die Annalen einging, und der, sieht man von der .NET-Laufzeit ab, keine einzige Zeile Managed Code enthielt. Das Thema .NET für die Windows-Plattform war mit der Auslieferung von Vista erledigt.

Und was wurde aus der ursprünglichen Vision einer Plattform für XML Web Services? Auch davon musste sich Microsoft relativ schnell wieder verabschieden, dieses Mal aber ohne größere Umsatzeinbußen. Das auf der PDC 2001 vorgestellte Projekt Hailstorm, eine auf .NET basierende Internetplattform, die zahlenden Kunden auf der Grundlage von SOAP Web Services zur Verfügung stellen sollte, wurde bereits einige Monate später wieder eingestellt. Damit war vieles von dem wieder Geschichte, was in der Presseerklärung zur Ankündigung des .NET Framework 1.0 ein Jahr zuvor in Aussicht gestellt worden war.

Pragmatisierung statt Visionen

Das alles liegt inzwischen Jahre zurück und interessiert heute höchstens noch IT-Historiker. Die Entwicklung des .NET Frameworks ging trotz des Hailstorm- und WinFx-Fiaskos weiter. Nachdem das Umsetzen von Visionen keine Zielvorgabe mehr war, konnten sich die Entwickler bei Microsoft auf die Umsetzung der von sehr vielen Entwicklern in der ganzen Welt dringend benötigten Funktionalitäten fokussieren. WPF, WCF und WF wurden in das .NET Framework 3.0 integriert, mit .NET 3.5 kam die genial anmutende „Abfragesprache“ LINQ dazu und spätestens mit .NET 3.5 SP1 lag eine Version des .NET Frameworks vor, mit der alle Entwickler zufrieden sein konnten. Mit der aktuellen Version 4.0 kamen die Task Parallel Library (TPL) und die Dynamic Language Runtime (DLR) ), die bis dahin als Vorabversionen vorlagen, in das .NET Framework integriert und das Entity Framework in seiner zweiten Version so verbessert, dass es wirklich brauchbar war. Mit Visual Studio 2010 wurde die gesamte IDE auf WPF umgestellt, was ein eindeutiger Indikator dafür war, dass der einstige Hoffnungsträger für grafische Oberflächen nicht auf einem Abstellgleis gelandet ist. Mit .NET 4.0 wurde auch die CLR 2.0 überarbeitet, sodass sie noch performanter und robuster arbeitet als bisher. Mit ASP.NET MCV hat Microsoft auch im Webbereich noch einmal die Kurve gekriegt, sah es dort zeitweise so aus als könne ASP.NET Web Forms nur noch hartgesottene Freunde des Event Handlers zufriedenstellen. Mit dem kommenden .NET 4.5 wird der asynchrone Aufruf von Methoden durch die Implementierung des Task-based Asynchronous Pattern (TAP) stark vereinfacht und es gibt zahlreiche kleine Verbesserungen bei WPF und WCF.

Große Akzeptanz in der Entwicklercommunity

Sehr viel wichtiger als die technischen Details ist die Akzeptanz in der weltweiten Entwicklercommunity. Es lässt sich feststellen, dass sich das .NET Framework sehr gut etabliert hat. Kein Entwickler muss potenziellen Auftraggebern noch erklären, was der Punkt im Namen zu bedeuten hat oder Überzeugungsarbeit für .NET leisten. Bei einer Umfrage anlässlich der VM World 2011 gaben 32 Prozent der Besucher auf die Frage „Welche Sprache/Framework nutzen Sie für die Inhouse-Entwicklung?“ das .NET Framework an, während sich 30 Prozent auf Java EE und 13 Prozent auf PHP festlegten (gefragt wurden insgesamt 1351 Konferenzbesucher [3]).

Die Nachfrage nach C#-Entwicklern ist im deutschsprachigen Bereich so stark wie nie zuvor und dürfte inzwischen die Nachfrage nach Java-Entwicklern übersteigen. Die Zahl offener Stellen auf Projektportalen wie Gulp belegt diesen Trend. Im Tiobe-Programmiersprachenindex stand C# im Februar 2012 an dritter Stelle hinter Java und C und mit einer ansteigenden Trendkurve [4]. Wer heute auf Stack Overflow oder in den MSDN-Foren ein spezielles Problem schildert, kann davon ausgehen, in kürzester Zeit eine kompetente Antwort zu erhalten. Das .NET Framework hat sich weltweit etabliert und genießt in Ländern wie Indien, Brasilien, Rumänien oder Bosnien beinahe Kultstatus, entsprechend groß ist dort die Anzahl gut ausgebildeter Entwickler.

Apple und Google begegnet Microsoft ohne .NET

Ende gut, alles gut? Leider nicht. Wieder einmal sieht sich Microsoft in der Defensive, wieder einmal sitzt der „Feind“ im Silicon Valley. Nur, dass er dieses Mal nicht Sun heißt, sondern Apple und Google. Dieses Mal geht es nicht um Web Services oder die Beherrschung des Internets, es geht um die mobilen Geräte, die inzwischen milliardenfach im Umlauf sind, und auf denen beinahe alles läuft, außer Windows. Mit der im September letzten Jahres für Windows 8 vorgestellten Windows Runtime (WinRT), einer Laufzeit ohne CLR und Managed Code, möchte Microsoft eine Plattform schaffen, die von Anfang an nicht nur auf Intel-Prozessoren, sondern auf mobilen Geräten mit einer ARM-CPU ausführen kann. Die neue Runtime verfügt über COM-Schnittstellen, kann aber auch per Managed Code angesprochen werden. Die Resonanz auf die Ankündigung der WinRT auf der PDC 2012 war durchweg positiv, die große Euphorie blieb dieses Mal aber aus. Jedem ist klar, dass Microsoft wieder einmal spät dran ist, nur dass sie dieses Mal nicht mit einer Technologie konkurrieren, die erst noch beweisen muss, dass sie etwas taugt, sondern mit zwei Konkurrenten, die einen Milliardenmarkt, dessen Potenzial längst noch nicht erschöpft zu sein scheint, sehr gut beherrschen. Vieles hängt davon ab, wie die kommende Generation von Windows-8-Tablet-PCs vom Markt aufgenommen wird und inwieweit es technisch realisiert werden kann, dass für Windows 8 geschriebene Apps auch unter Windows Phone 8 ausgeführt werden können und umgekehrt. Trotz aktuell noch sehr geringer Marktanteile werden dem Windows Phone, vor allem bedingt durch die Kooperation mit Nokia, die auf eine Übernahme des finnischen Mobilfunkspezialisten hinauslaufen könnte, derzeit gute Chancen eingeräumt, sich als dritte Kraft im mobilen Bereich etablieren zu können.

Bei allen Zukunftsplänen spielt das .NET Framework in Redmond anscheinend aktuell keine Rolle mehr. Das bedeutet jedoch nicht, dass es in Bezug auf seine Nutzung an Bedeutung verlieren oder gar eingestellt werden wird. Als bewährte, weil funktional reichhaltige und robuste Plattform für Desktop- und Serveranwendungen hat das .NET Framework seine Nische gefunden. Hätte Microsoft es von Anfang an für diese Aufgaben positioniert, hätte es eine glatte Erfolgsgeschichte werden können. Doch Microsoft-Produkte gelangen meistens nur auf Umwegen ans Ziel.

Peter Monadjemi ist freiberuflicher Autor und Trainer zu Visual Basic, Office-Programmierung, PowerShell und anderen Themen. Sie erreichen ihn unter pm@activetraining.de.
Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -