C/C++

C ist die Programmiersprache, in der (fast) das komplette Betriebssystem Unix und die meisten auf ihm laufenden Anwendungen geschrieben sind. Kein professioneller Softwareentwickler kommt heute um das Erlernen dieser Sprache herum.

C++ ist eine Erweiterung von C um Elemente für die objektorientierte Programmierung. Zwar hat die vor einiger Zeit als Vorteil des objektorientierten Designs herausgestellte Wiederverwendbarkeit von Sourcecode durch Klassenvererbung wenig Effekt gezeigt. Dagegen ist die Möglichkeit der Erzeugung wiederverwendbarer Komponenten durch die Trennung von Interfacedefinition und -implementierung ein klarer Vorteil objektorientierter Ansätze. Java geht hier zwar konsequenter als C++ vor, jedoch hat C++ den Vorteil der unkomplizierten Einbindung der Unmengen existierenden C-Codes.

Das Tutorial Objektorientiertes Programmieren mit C++ wendet sich an den C Programmierer, der seine Kenntnisse um C++ erweitern will. Verschiedene praxisorientierte Themen zu C und C++ werden in den weiterführenden Artikeln behandelt.

Im Zeitalter allgemeiner Vernetzung gewinnt die Entwicklung verteilter Applikationen, die auf verschiedenen Rechnern laufen und über ein Netzwerk miteinander kommunizieren, immer mehr an Bedeutung. Als Vermittler zwischen diesen Applikationen setzt sich die Common Object Request Broker Architecture (CORBA) immer mehr durch. Einen Einstieg in diese Thematik bietet das Tutorial Programmieren mit CORBA und C++.

Als Kurzreferenz für den C-Profi eignen sich die Liste der Standard C Library Funktionen und die Liste der POSIX Library Funktionen.

Zum Erlernen einer Programmiersprache sind Beispiele ganz wichtig; ein professioneller Entwickler will nach Möglichkeit das Rad nicht noch einmal erfinden und sucht nach Lösungen für immer wiederkehrende Aufgabenstellungen. An alle diese Anwender wendet sich die Linkliste. Bei der Auswahl wurde der Schwerpunkt auf frei verfügbare Software gelegt. Die Entwicklung Freier Software ist eine faszinierende Philosophie und ein absolutes Muß, um die auch im Bereich der Softwareentwicklung limitierten Ressourcen unserer Welt besser ausnutzen zu können.