mono, dotgnu und System.Windows.Forms
Seit einiger Zeit arbeiten einige meiner Kollegen daran, Programme für mobile Handterminals, die unter dem Betriebssystem WindowsCE.net laufen, zu schreiben. Ab und zu helfe ich auch ein bisschen mit, C# ist ja eine ganz nette Sprache und der Umstieg für Leute mit Java-Kenntnissen ganz leicht.
Für mich als Linuxer wäre es wünschenswert, diese C#-Programme auch unter Linux testen zu können.
Und da es gleich zwei Projekte gibt, die .net für Linux und andere Betriebssysteme umsetzen wollen,
habe ich mir die mal angeschaut. Die Ergebnisse meiner Tests waren aber ernüchternd. Insbesondere die Umsetzung der System.Windows.Forms-Bibliothek haut bei unserem Programm noch so gut wie überhaupt nicht hin, und wir dabei machen wir nur ganz simple Masken mit ein paar Labels, Eingabefeldern und Buttons. Wobei ich im Fall von Mono sagen muss, dass ich die SuSE9.0-RPM-Pakete auf meine Mandrake 9.2-Installation gnadenlos draufgeknallt habe, das dürfte bei der Mono-Implementierung von System.Windows.Forms, die auf Wine basiert, keine so tolle Idee sein. Dotgnu habe ich hingegen frisch aus den Sourcen compiliert. Langer Rede kurzer Sinn, bei Mono werden die Fenster mit 100% Transparenz dargestellt (und auch sonst tut sich wenig); bei dotgnu werden nur rechteckige Flächen ohne Beschriftung gerendert.
Meine Hoffnungen, dass es die freien Nachbauten in nächster Zeit schaffen, dass man beliebige, für Windows geschriebene .net-Programme unter Linux ausführen kann und damit vergleichbar plattformunabhängig ist wie z.B. mit Java und Swing, habe ich damit wieder hinten angestellt. Ich denke, man wird letztlich auf das Nievau von Wine kommen. Problemlose Plattformunabhängigkeit bleibt den dafür vorgesehenen Toolkits (Java, QT, GTK, WX etc.) vorbehalten.


0 Comments:
Post a Comment
<< Home