| |
- 8 -
jedoch nur mit einer geeigneten Entwicklungsumgebung einigermaßen komfortabel
realisierbar, da der Code hierfür recht umfangreich ist.5
Ein weiteres interessantes und auch äußerst nützliches Feature ist der Global Assembly
Cache, kurz GAC. Der GAC verwaltet alle global verfügbaren DLLs und Bibliotheken.
Im Gegensatz zur Situation vor .NET können jetzt verschiedene Versionen einer DLL
gleichzeitig im System präsent sein. Dadurch und die Möglichkeit, einer Applikation
mitzuteilen, welche Version der DLL sie benutzen soll, kommt es zu weniger Inkompa-
tibilitäten aufgrund von falschen DLL-Versionen. Denn bisher tritt es des Öfteren auf,
dass eine Applikation eine DLL durch eine andere Version ersetzt und dadurch andere
Applikationen ihren Dienst versagen. Microsoft selbst nutzt diese Tatsache, um voll-
mundig das Ende der DLL-Hölle zu propagieren.
Das vielleicht wichtigste und interessanteste Feature von .NET dürfte sicherlich die
(clientseitige) Komponentenarchitektur sein. Sie ermöglicht, ähnlich wie Java Beans
seitens Java, eine einfache Modulbauweise für Desktop-Applikationen. So lassen sich
schnell ganze Programmteile auswechseln oder einbinden, ohne dass der Kern der Ap-
plikation groß davon betroffen ist.
Im Gegensatz zu Java besteht aber der Vorteil, dass sämtliche Komponenten nicht in
Java geschrieben sein müssen, sondern eine beliebige Programmiersprache, die die CLI
unterstützt, dafür verwendet werden kann. So lässt sich beispielsweise eine in Visual
Basic .NET geschriebene Komponente problemlos von einer in C# geschriebenen Ap-
plikation verwenden. Sofern die Signatur der Methoden identisch ist, bedarf es noch
nicht einmal einer Änderung innerhalb der Kern-Applikation.
In folgendem Beispiel verwendet die in C# implementierte Klasse Second die Metho-
de schreibeText() der Klasse First, die in Visual Basic .NET implementiert
wurde:
First.vb
5
Vgl. ct 04/2002, Seite 94 - 96
REM Klasse First in Visual Basic .NET
Public Class First
Public Sub New() Konstruktor für Klasse
End Sub
Public Sub schreibeText()
System.Console.WriteLine("Dies ist eine VB-Klasse")
End Sub
End Class
|  |
|
| |
|
|