Microsofts .Net: Werkstatt für Web-Services

Schulungsaufwand nicht unterschätzen

10.12.2001
Mit .NET liefert Microsoft endlich eine brauchbare Plattform für die Entwicklung verteilter Anwendungen. Doch die Einarbeitung in die Technik ist nicht trivial. von Thomas Erbrich*

Die Entwickler von Anwendungssoftware müssen umdenken - der Trend hin zu verteilten, Internet-basierten Lösungen verstärkt sich zunehmend. Ihre Vorteile sind verlockend: Sie sind 24 Stunden am Tag auf der ganzen Welt verfügbar, kommen ganz ohne Installation beim Anwender aus und erlauben es, einfach über das Internet mit dem Handy oder PC auf alle relevanten Daten zuzugreifen. So interagieren heterogene Anwendungen im globalen Netzwerk für die Abwicklungen eines Geschäftsprozesses miteinander. Um solche Visionen Realität werden zu lassen, sind die bisherigen Verfahren nicht ausreichend. Microsofts Antwort auf die Herausforderungen heißt .NET.

Microsoft .NET ist eine Plattform zur Entwicklung und zum Betrieb verteilter Anwendungen. Obwohl sich damit auch klassische Windows-Anwendungen schreiben lassen, ist das Ziel doch klar die Entwicklung Internet-basierender Lösungen. Da das Internet mit dem HTTP-Protokoll keine permanent gehaltenen Verbindungen kennt, sind Microsofts verbindungsorientiertes Protokoll Distributed Component Object Model (DCOM) oder die Common Object Request Broker Architecture (Corba) der OMG für Web-Anwendungen eigentlich ungeeignet. So basiert .NET auch nicht mehr auf COM oder DCOM - obwohl es weitgehende Interoperabilität dazu bietet -, sondern fußt fast vollständig auf Internet-Standards. Das Konzept der Status- und Verbindungslosigkeit durchdringt die Architekturen des .NET-Frameworks bis in den Kern.

Von Windows zum Web

Das Framework .NET ist nicht an Windows als Betriebssystem gebunden, sondern lässt sich, ähnlich wie Java, prinzipiell auf beliebigen Betriebssystemen implementieren. Die Anwendungen laufen somit auf jedem System, auf dem die Runtime-Umgebung von .NET, die Common Language Infrastructure (CLI), zur Verfügung steht. Unter anderem ist schon eine Portierung auf BSD Unix angekündigt. Zusätzlich zur Unabhängigkeit vom Betriebssystem bietet das .NET-Framework weitgehende Unabhängigkeit von Programmiersprachen. Bei Erscheinen von .NET sollen laut Microsoft über 20 Programmiersprachen dafür zur Verfügung stehen. Damit ist der Schritt von Windows zu .NET mindestens so bedeutsam (und groß) wie damals der Wechsel von DOS nach Windows.

Viele Altlasten der Windows-Programmierung machen den Entwicklern bis heute das Leben schwer. So ist die API Win32 inzwischen recht unhandlich, die Registry bringt Probleme für die Verteilung von Anwendungen, die DLLs widersetzen sich einer effizienten Versionierung (bekannt als "DLL Hell"), das Speicher-Management ist die Quelle so mancher Schutzverletzung, und die hohe Komplexität der COM-Programmierung reduziert die Produktivität von Entwicklern erheblich.