13.11.2006, 00:00 Uhr
Mono 1.2 macht einen Kompatibilitätssprung
Das alternative Framework bietet nun eine vollständige Implementierung von Windows Forms 1.1.
Bei der freien .NET-Umgebung Mono, das eine alternative Implementierung des .NET Framework für Linux und Windows bietet, ist es zu einem entscheidenden Versionssprung gekommen: Version 1.2 soll bei der Kompatibilität mit dem Microsoft .NET Framework stark aufgeholt haben. So soll es nun zu Windows Forms 1.1 vollständig kompatibel sein und den Namensraum System.Drawing komplett zur Verfügung stellen. Die Implementierung ist auch zur WndProc()-Methode kompatibel, die das Abfangen von Windows-Ereignissen und -Nachrichten erlaubt. Das heißt, dass auch Steuerelemente von Drittanbietern unter Mono einsatzbar sind, die auf diesen Mechanismus zurückgreifen. Windows-Forms-Treiber liegen in Mono 1.2 für Win32 und für das Linux-Fenstersystem X11 vor.
Ebenfalls vollständig enthalten soll nun auch der Namensraum System.ServiceProcess sein, der Klassen für Windows-Dienste bereitstellt. Auch Funktionen, die in .NET 2.0 neu vorgestellt wurden, haben die Entwickler der aktuellen Mono-Version teilweise schon implementiert, so etwa den Namensraum System.Transactions. Auch für C# liegen Compiler sowohl für C# 1.0 als auch 2.0 vor; sie sind selbst in C# programmiert und sollen im Vergleich zu den Vorgängerversionen schneller arbeiten. Auch die Leistung des erzeugten Codes soll sich spürbar verbessert haben, ebenso soll das Framework den Arbeitsspeicher wesentlich besser ausnutzen. Desweiteren gibt die API System.Reflection.Emit Fehlerdaten nun auch imi MDB-Format aus und die Registry wird nun unter Linux ebenso wie unter Windows unterstützt.
Für Visual Basic .NET enthält das System Laufzeitbibliotheken für die Versionen 1.0 und 2.0, ebenso eine JScript-Runtime. Außerdem gehört nun die Java-Laufzeitumgebung IKVM zu Mono; mit ihr lassen sich Java-Anwendungen unter Mono ausführen. ADO.NET, ASP.NET, System.Configuration und Windows Forms unterstützten .NET 2.0 erst teilweise; die vollständige Kompatibilität damit ist für Mono 2.0 angestrebt.
Der IO-Layer ist nun nicht mehr als eigenständiger Dämonprozess implementiert. Ein neues Portabilitäts-Framework sorgt dafür, dass sich Anwendungen nun ohne Anpassungen im Code auf den verschiedenen Plattformen läuft, für die Mono zur Verfügung steht. Damit sollen sich eine ganze Reihe von Problemen, die es bisher beim Austausch der Anwendungen zwischen den Plattformen gab, quasi in Luft auflösen.
Dazu kommt noch eine ganze Reihe weiterer Verbesserungen. Details finden sich in den Versionshinweisen auf der Website des Projektes.
Ebenfalls vollständig enthalten soll nun auch der Namensraum System.ServiceProcess sein, der Klassen für Windows-Dienste bereitstellt. Auch Funktionen, die in .NET 2.0 neu vorgestellt wurden, haben die Entwickler der aktuellen Mono-Version teilweise schon implementiert, so etwa den Namensraum System.Transactions. Auch für C# liegen Compiler sowohl für C# 1.0 als auch 2.0 vor; sie sind selbst in C# programmiert und sollen im Vergleich zu den Vorgängerversionen schneller arbeiten. Auch die Leistung des erzeugten Codes soll sich spürbar verbessert haben, ebenso soll das Framework den Arbeitsspeicher wesentlich besser ausnutzen. Desweiteren gibt die API System.Reflection.Emit Fehlerdaten nun auch imi MDB-Format aus und die Registry wird nun unter Linux ebenso wie unter Windows unterstützt.
Für Visual Basic .NET enthält das System Laufzeitbibliotheken für die Versionen 1.0 und 2.0, ebenso eine JScript-Runtime. Außerdem gehört nun die Java-Laufzeitumgebung IKVM zu Mono; mit ihr lassen sich Java-Anwendungen unter Mono ausführen. ADO.NET, ASP.NET, System.Configuration und Windows Forms unterstützten .NET 2.0 erst teilweise; die vollständige Kompatibilität damit ist für Mono 2.0 angestrebt.
Der IO-Layer ist nun nicht mehr als eigenständiger Dämonprozess implementiert. Ein neues Portabilitäts-Framework sorgt dafür, dass sich Anwendungen nun ohne Anpassungen im Code auf den verschiedenen Plattformen läuft, für die Mono zur Verfügung steht. Damit sollen sich eine ganze Reihe von Problemen, die es bisher beim Austausch der Anwendungen zwischen den Plattformen gab, quasi in Luft auflösen.
Dazu kommt noch eine ganze Reihe weiterer Verbesserungen. Details finden sich in den Versionshinweisen auf der Website des Projektes.