Alles wird .Net

Webservices ist das Thema der Stunde. Voraussetzung ist ein funktionierender Rahmen, der das nahtlose Zusammenspiel der involvierten Bausteine und die einschlägigen Standards unterstützt. Mit Dot-Net will Microsoft den Entwicklungsanstrengungen diverser Hersteller rund um Java Paroli bieten und räumt zunächst einmal in der eigenen Windows-Welt auf.

Von: Achim Born

Spätestens in vier Jahren, da sind sich die Analysten der Gartner Group ziemlich sicher, werden 80 Prozent der neuen Unternehmensanwendungen mit einer service-orientierten Architektur (SOA) aufwarten. Im Gefolge des neuen Ansatzes sollen Webservices die Erstellung verteilter Anwendungen komplett umkrempeln: Montage statt Programmierung wird dann endlich Realität. Über eine Handvoll von Internetstandards wie XML, SOAP (Simple Object Access Protocol), UDDI (Universal Description, Discovery and Integration) und in WSDL (Web Services Description Language) lassen sich solche Services finden und einbinden.

Viele Industriebeobachter sind davon überzeugt, dass den Webservices bei der Erstellung von unternehmensübergreifenden E-Business-Anwendungen die Rolle zukommt, die heute Browser bei konsumentenorientierten Geschäften über das Internet spielen. Und wo es - vermeintlich - viel zu verdienen gibt, wollen viele mitmischen. Jenseits der Standards konkurrieren zwei objektorientierte Modelle - ".Net" von Microsoft und Suns EJB (Enterprise Java Bean) in Ausprägungen wie "Sun One", Oracle ".Now", IBM "Web-sphere" oder HP "Netaction" - um den ersten Platz bei der technischen Entwicklungs- und Trägerplattform für solche Dienste. Die Protagonisten beider Lager zeigen wenig Scheu, von Zeit zu Zeit die harten (Marketing-) Bandagen überzustreifen. Während Microsoft-Manager Graham Clark beispielsweise Java als "den letzten Standard, der von einem Hersteller beherrscht wird" bezeichnet, schüren Sun-Vertreter die übliche Angst vor Microsofts Marktmacht und warnen zudem davor, Standards wie SOAP ("nur eine neue Ausprägung des RPC-Mechanismus") überzubewerten.

Ungeachtet dieser Auseinandersetzung vollzieht Microsoft mit dem im vergangenen Jahr angekündigten und in der Zwischenzeit näher spezifizierten .Net-Framework einen Bruch mit der einstigen Desktop-Orientierung. Schon bei der "Premiere" im Juni 2000 bezeichnete Microsoft-Chef Steve Ballmer den Wechsel des Unternehmens zu .Net als ebenso wichtig wie seinerseits die Ablösung von DOS durch Windows. Im Gegensatz zu früheren Auftritten lassen die Redmonder seitdem auch immer wieder anklingen, dass die Defizite der bisherigen Produkte den Weg der eigenen Internetpläne versperrten. Der Hinweis auf die "DLL-Hell", die Versionskonflikte bei von mehreren Programmen gemeinsam genutzten Laufzeitbibliotheken, gehört ebenfalls zum Standard-Repertoire in Vorträgen.

Diese Schmähung der eigenen Produkte meint man sich leisten zu können, stellt doch .Net in den Augen von Microsoft "die Plattform" zur Entwicklung und den Betrieb von Webservices dar. Im Gegensatz zu früheren Ansätzen folgt das Konzept ohne Rücksicht auf "Altlasten" dabei einem objektorientierten Modell, das auf Internet-Standards - in erster Linie XML - fußt und im Unterschied zu COM/DCOM (Distributed Component Object Model) eine durchgängige Status-/Verbindungslosigkeit aufweist. Zudem ist sich Microsoft nicht zu schade, die eine oder andere Anleihe von Java und Unix einfließen zu lassen. Die Speicherverwaltung Garbarge Collection oder das Konzept der Laufzeitumgebung CLR sind schon von Java oder anderen objektorientierten Konzepten her bekannt. Im Unterschied zu der Sun-Entwi-cklung erlaubt .Net, dessen primäre Implementierungssprache C# ist, allerdings den Einsatz unterschiedlicher Sprachen. Der Programmcode wird dabei zuerst in ein kompiliertes Zwischenformat übersetzt. Bei der Ausführung übertragen die jeweiligen Compiler diesen binären Bytecode dann in Echtzeit. Unabhängig von der Quellsprache lassen sich hierdurch Beziehungseigenschaften und Ähnliches zwischen unterschiedlichen Klassen vererben. Die Laufzeitumgebung stellt den transparenten Aufruf sicher. .Net-Komponenten (Assemblies) können darüber hinaus durch einfaches Kopieren von Dateien (Xcopy Deployment) in verschiedenen Versionen installiert werden. Speicherverwaltung, Verfolgen des Lebenszyklus eines Objekts beziehungsweise einer Klasse - all dies obliegt der Laufzeitumgebung. Entsprechend einfach geht auch das Entwerfen und der Einsatz der Webservices vonstatten. Die Methoden der entsprechend abgeleiteten Klassen werden mit dem Attribut "Webservice" geschmückt und schon sind sie über SOAP verfügbar. Eine simple Programmierzeile reicht folglich, um UDDI/SOAP/WSPI zu unterstützen.

Komplett neue Technologien sucht man in der .Net-Architektur vergebens. Die Implementierungssprache C# integriert etwa Techniken von C++ und Java. Die ASPs (Active Server Pages) firmieren jetzt unter ASP.Net und erhielten ein rein objektorientiertes Modell verpasst, das Programmcode und Oberfläche trennt. Grafische Oberflächen lassen sich für Windows mithilfe von Win-Forms und für Webseiten mittels Web-Forms erstellen. Letzteres ermöglicht außerdem, mit einem Quellcode unterschiedliche Endgeräte, bis hin zu WAP-Handys zu unterstützen. Die Datenbankschnittstelle ADO (Ac-tive Data Objects) kann als ADO.Net mit XML umgehen. COM+-Anwendungen aus der "alten" Microsoft-Welt lassen sich durch Wrapper einbinden. Selbst der umgekehrte Weg, Wrapper als COM+-Klasse zu nutzen, funktioniert.

Grundsätzlich ist .Net nicht an Windows gebunden. Microsoft hat zudem sowohl C# als auch CLI (Common Language Infrastructure), die gemeinsam mit der Laufzeitumgebung das Herz des Framework bildet, bei der ECMA zur Standardisierung eingereicht. Damit ist man in puncto Normierung entgegen sonstiger Gepflogenheiten Sun voraus. Gleichwohl rechnen die meisten Experten damit, dass .Net in erster Linie Microsoft bedeuten wird. Mittlerweile ist auch die XML-Fähigkeit des eigenen Server-Portfolios kräftig ausgebaut worden. Als Stützen für die .Net-Infrastruktur gelten der SQL Server 2000 bei der Datenbank und der IIS (Internet Information Server) zur Bereitstellung von Protokollen wie HTTP, SMTP sowie Web-DAV (Web Distributed Authoring and Versioning). Der BizTalk-Server fungiert als Middleware-Protokollkonverter für das Routing und die Transformation der Geschäftsdokumente. Der Exchange-Server schlüpft in die Rolle des Groupware/Messaging-Systems; der Sharepoint Portal Server 2000 übernimmt neben der Funktion des Portal-Servers zusätzlich die eines Dokumentenmanagementsystems.

Auf der jüngsten hauseigenen Entwicklermesse PDC (Professional Developer Conference) stellte Microsoft schon erste eigene Webservices vor, die man an Dritte vermieten will. Auch wurden erste Vorversionen der Entwicklungsumgebung "Visual Studio.Net" und des net.Frameworks verteilt. Ansonsten gilt es sich in Geduld zu fassen. Denn nach Ausführungen des nunmehr als Cheftechnologe fungierende Bill Gates wird es noch bis zum nächsten Jahr dauern, bis es ein neues .Net-Server-Betriebssystem sowie einen -Enterprise-Server für E-Business gibt. Noch ein weiteres Jahr später soll ein neues Windows-Release (Longhorn) folgen. Dann sollen zudem die .Net-Services im Markt breite Akzeptanz erfahren.

In der Zwischenzeit wird vor und hinter den Kulissen der Kampf um die Entwicklergunst toben. Für Java spricht heute noch die hohe Verbreitung und die erwiesene Plattformunabhängigkeit. .Net kann dafür mit einem durchgängigen Konzept und Sprachunabhängigkeit aufwarten. Nach einer Ende Oktober veröffentlichen Umfrage von Component Source, einem Marktplatz für wiederverwendbare Software-Komponenten, scheint in den Köpfen der Entwickler .Net gegenwärtig besser als Suns Enterprise Java Beans abzuschneiden. Zumindest wollen sich mehr als 79 Prozent der repräsentativen Auswahl aus zirka 500 000 Teilnehmern am Marktplatz zunächst ausschließlich mit .Net auseinandersetzen, während nur 14 Prozent den EJB den Vorzug gaben. Allein sieben Prozent bewerten beide Plattformen gleich. Bei dem Ergebnis mag eine gewisse Ungeduld der Entwickler über den schleppenden Verlauf der Java-Standardisierung mitspielen, die von Sun kontrolliert wird. (sf)

Zur Person

Achim Born

ist freier Journalist in Köln.