Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2008  »  11  »  Siegen lernen  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

Putzdienst

Die mit »new« angelegten Referenztypen verwaltet in C# ein Garbage-Collector. Der Entwickler muss sich nicht selber um das Aufräumen kümmern. Dieser Ansatz ist komfortabel, gerät jedoch gelegentlich wegen seines Performance-Overheads in die Kritik. Herauszufinden, wann ein Objekt nicht mehr gebraucht wird und der Garbage-Collector es löschen darf, bedeutet zusätzlichen Aufwand.

Neben den Referenztypen kennt C# die Wertetypen wie »int«, »float«, »double«, »decimal« und »bool«. Die Schlüsselwörter »int« oder »bool« sind dabei nicht nur Kurzschreibweisen für die Klassen »System.Int32« und »System.Boolean«. Listing 1 hat demonstriert, wie sich bestimmte, im Sprachumfang enthalten Methoden weitervererben.

Listing 3 ergänzt Listing 2 um die sehr kurze Methode »Main«. Diese bindet den Namensraum der »ObjectPrinter«-Klasse aus Listing 2 ein, instanziiert ein passendes Objekt und ruft die »print()«-Methode des Objekts auf. Die beiden Dateien lassen sich mit »gmcs main.cs objectCollection.cs« übersetzen.

Der Aufruf von »mono main.exe«, gibt folgende Ausgabe zurück:

Im Apfel-Konstruktor: Ich bin ein Apfel
Im Birnen-Konstruktor: Ich bin eine Birne
In HalloWelt2.Main():
LinuxMagazineObjectPrinter.Apfel
LinuxMagazineObjectPrinter.Birne

Die ersten beiden Zeilen stammen von den Konstruktoren der Klassen »Apfel« und »Birne«. Die beiden letzten Zeilen erzeugen »Apfel.ToString()« sowie »Birne.ToString()«, die Zeile 30 über das Array »obstSammlung[]« indirekt aufruft.

Die Methode »ToString()« stammt aus der »System.Object«-Klasse der C#-Standard-Bibliothek. Sie ist aber nicht dafür ausgelegt, spezifische Informationen zu den beiden Klassen auszugeben. Sie liefert daher einfach den voll qualifizierten Namen inklusive Namensraum zurück. Wie sich die Umwandlung eines Objekts in einen String mit Hilfe von polymorpher Vererbung aufschlussreicher gestalten lässt, erläutert der nächste Teil der C#-Serie.

Listing 3:
»main.cs«

01 using System;
02 using LinuxMagazineObjectPrinter;
03 
04 namespace LinuxMagazinHelloWorld2
05 {
06   class HalloWelt2
07   {
08     public static void Main(string[] args)
09     {
10       ObjectPrinter opr = new ObjectPrinter();
11       Console.WriteLine("In HalloWelt2.Main():");
12       opr.print();
13     }
14   }
15 }

Schweizer Taschenmesser

Stabil liegt die komfortable Entwicklungsumgebung Monodevelop bisher erst in Version 1.0 vor [9]. Momentan fehlen noch einige wünschenswerte Features, Version 2.0 steht aber schon vor der Tür. Monodevelop 1.0 ist in den verbreiteten Distributionen enthalten. Aktuellere Versionen sind eventuell auf dem Open-Suse-Buildservice [11] zu finden.

Die IDE bietet beim Anlegen von Projekten Standard-Projekttypen an, darunter den Typ »Gtk# 2.0«. Um den Dialog mit dem Text »Hallo Linux-Magazin« aus Abbildung 2 anzuzeigen, sind nur wenige Änderungen an dieser Vorlage erforderlich. Wie andere IDEs geht auch Monodevelop über das Syntax-Highlighting und die Schlüsselwort-Vervollständigung gewöhnlicher Editoren hinaus. Abbildung 3 zeigt den Code-Vervollständigungsdialog, der sämtliche Methoden der Klasse »win« aus der Standardbibliothek mitsamt einer kurzen Dokumentation präsentiert.


Abbildung 2: Auch wenn es sich noch nicht mit Microsofts Virtual Studio messen kann, bietet Monodevelop dennoch eine komfortable Entwicklungsumgebung für C# und andere Sprachen.


Abbildung 3: Die Eingabevervollständigung von Monodevelop umfasst nicht nur Schlüsselwörter, sondern auch die Methoden von Standardklassen.

Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
Richtig eintüten C#-Entwicklung unter Linux - Teil 3
Es entwickelt sich Qt- und KDE-Entwicklung mit Kdevelop 4
Frisch aufgebrüht Netbeans 6.0 und Eclipse 3.3 im Vergleich
Projekteküche Aktueller Überblick über freie Software und ihre Macher
Türöffner Service-orientierte Abbildung von Geschäftsprozessen mit freier Software
Grenzen überwinden Mit Qt Mobility in QML und C++ Apps für mobile Geräte entwickeln
Whitepaper
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele

Über die letzten Jahre hinweg haben sich Open Source Lösungen als fester Bestandteil des gesamten Datenintegrationsmarktes etabliert. Viele Unternehmen haben bereits das Open Source Modell für Ihre Datenintegrationsprojekte aufgegriffen. Das vorliegende White Paper illustriert anhand ausgewählter Fallstudien und Anwendungsbeispiele die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
The Role of Open Source in Data Integration

Obwohl in den letzten Jahren viele technische Fortschritte erzielt werden konnten, verfügen die meisten Datenintegrationsprozesse nach wie vor nur über eine sehr begrenzte Automatisierung. Das vorliegende White Paper von dem Industry Analyst Mark Madson wird zunächst ein grundlegendes Verständnis von Daten Integration vermitteln, die Vorzüge von Open Source Lösungen für Daten Integration erläutern und Ihnen professionelle Empfehlungen geben, damit Sie Ihre Integrationsjobs noch einfacher und produktiver gestalten können.

Download PDF (Registrierung erforderlich)
Kommentare (0)