Kommentar: Kann Microsoft mit XAML Standard die Abwanderung von Entwicklern stoppen?

Microsoft muss endlich Vollgas geben, um mit dem neuen XAML Standard die Abwanderung von Entwicklern in Richtung HTML und JavaScript und/oder TypeScript zu stoppen – so die bittere Einschätzung von Dotnet-Doktor Holger Schwichtenberg.

In Pocket speichern vorlesen Druckansicht 128 Kommentare lesen
Kommentar: Kann Microsoft mit XAML Standard die Abwanderung von Entwicklern stoppen?
Lesezeit: 5 Min.
Von
  • Dr. Holger Schwichtenberg
Inhaltsverzeichnis

Microsoft redet nun schon seit drei Jahren von Cross-Plattform, hat aber bis heute nur ein lückenhaftes Cross-Plattform-Angebot für den Server und eine zugekaufte Multi-Plattform-Software für mobile Apps (Xamarin). Wenn es darum geht, eine echte Cross-Plattform-Benutzeroberfläche für Windows, Linux, macOS, Android, iOS, WatchOS, Tizen usw. zu schaffen, steht Microsoft komplett nackt dar. Es gibt zwar die Oberflächenbeschreibungssprache XAML für viele dieser Plattformen, aber die verschiedenen Dialekte sind ja leider nicht kompatibel zueinander. Microsoft hat den Fehler gemacht, diesen Wildwuchs überhaupt zuzulassen.

Ein Kommentar von Holger Schwichtenberg

Holger Schwichtenberg bloggt als "Dotnet-Doktor" auf heise Developer. Er ist einer der bekanntesten Experten für .NET in Deutschland und bietet mit seiner Firma IT-Visions Beratung, Schulung und Entwicklungsarbeit für Windows- und Web-basierte Anwendungen.

Jede Woche muss ich als Berater den Softwareherstellern, die von ihren Nutzern zu Cross-Plattform getrieben werden, sagen: "Eine Cross-Plattform-GUI-Anwendung mit XAML ist ein riesiger Aufwand, weil man jede Bildschirmmaske mehrfach implementieren muss. Die einzige wiederverwendbare Lösung dafür ist HTML mit JavaScript beziehungsweise TypeScript."

Das wollen aber die meisten .NET-Entwickler gar nicht hören. Sie lieben ihre Entwicklungsplattform einschließlich der Oberflächensprache XAML für ihre Mächtigkeit und Produktivität – auf Windows. Und fragen nach genau dieser Lösung für all die anderen Plattformen. Auch bei Microsoft ist diese Anforderung immer wieder angekommen. Gerüchte zum Thema gibt es seit Jahren. Dass .NET-Entwickler nicht gerne zu HTML und JavaScript umschulen, hat auch der Flop der HTML-basierten Windows Modern Apps gezeigt.

Gestern hat Microsoft-Architekt Abolade Gbadegesin den Begriff "XAML Standard" analog zum ".NET Standard" in der Build-Keynote ins Spiel gebracht und auch noch ein Erscheinen für 2017 angekündigt. Hurra!? Nein! Ich bin da jetzt sehr verhalten mit meinem Jubel.

Wer sich das GitHub-Repository von XAML Standard ansieht, erkennt schnell, dass es erst vor vier Tagen eröffnet wurde und bisher eine mickrige Spezifikation enthält, die nur acht XAML-Tags auf weniger als zwei DIN-A4-Seiten beschreibt. Das Dokument erweckt den Eindruck, dass die Arbeit an dem Projekt noch nicht wirklich gestartet ist, sondern hier nur schnell irgendetwas bereitgestellt wurde, damit Gbadegesin in der Keynote ausrufen konnte: "The Spec is under development right now." Mehr als ein Feigenblättchen vor Microsofts Blöße an der Cross-Plattform-UI-Front ist das, was wir da sehen, aber nicht.

Nachdem nun schon seit Jahren zunehmend Entwickler von XAML (oder einem der Vorgänger wie VB Forms und Windows Forms) zu HTML wechseln, hätte ich mir nun im Jahr 2017 deutlich mehr aus Redmond erhofft: Eine fette Spezifikation und auch eine Beta-Version der Implementierung. Was hat Microsoft die letzten Jahre denn getan in der Sache? Offensichtlich nur sinniert.

Denken wir an .NET Standard: Da ist auch erst die Version 2.0 praxistauglich! Das Thema der Implementierung von XAML Standard bleibt ganz offen, im GitHub-Projekt gibt es bisher keine einzige Zeile Code: Wenn die Spezifikation in Version 1.0 dieses Jahr erscheinen soll, wann gibt es dann eine Umsetzung? Also wann können wir wirklich "Write one, run anywhere" mit XAML machen? Ein GUI-Framework Cross-Platform zu implementieren ist aufwendiger als ein paar Server-APIs!

Gespannt kann man auch darauf sein, ob die Umsetzung des XAML Standard in UWP, Xamarin Forms und WPF zu sogenannten Breaking Changes führen wird oder ob es Microsoft gelingen wird, trotz der Vereinheitlichung die Kompatibilität zu den bestehenden XAML-Implementierungen und der Vielzahl bestehender XAML-basierten Anwendungen zu erhalten. Und nicht vergessen dürfen wir an der Stelle Linux und macOS. Bisher gibt es gar kein XAML für Linux und nur eine erste Vorabversion von Xamarin Forms für macOS. In Microsofts folgendem Bild tauchen diese beiden Betriebssysteme nicht in Verbindung mit dem XAML Standard auf.

XAML Standard erstreckt sich erst mal nicht auf Linux und macOS.

(Bild: Microsoft)

Mehr Infos

Was Microsoft heute geliefert hat, ist nicht mehr als eine Geste: Microsoft will jetzt etwas tun gegen die Abwanderungstendenzen. Ich kann Microsoft nur sagen: Dann gebt ab heute richtig Vollgas an der Stelle. Das darf jetzt nicht so lange dauern wie die dreieinhalb Jahre, die zwischen der Ankündigung von Cross-Plattform-Server-.NET auf der TechEd 2014 und der ersten praxistauglichen Implementierung namens .NET Core 2.0 zum 3. Quartal 2017 liegen. Denn in diesen Jahren müssten meine Kollegen und ich noch viele weitere Firmen dabei begleiten, von C# und XAML auf JavaScript und HTML umzusteigen. Dabei möchte ich doch nichts lieber, als "Dotnet-Doktor" zu bleiben. (ane)