Von Java nach C++

Abstract

Dieser Text entstand am Lehrstuhl Wagner im Rahmen der Praktika, die Studierende im Hauptstudium machen müssen. Sie lernen im Grundstudium objektorientiertes Programmieren anhand der Programmiersprache Java. Es hat sich allerdings gezeigt, dass für Algorithmen und Datenstrukturen Java schlechter geeignet ist als C++. Deshalb sind wir dazu übergegangen, im ersten Teil des Praktikums C++ zu vermitteln. Dabei beschränken wir uns auf einige Teilaspekte von C++, die wir für notwendig und sinnvoll für diese Awendung erachten. Insbesondere werden hardwarenahe Teile der Programmiersprache auf eine Minimum reduziert. Es soll aber nicht gesagt werden, dass Java eine schlechte Programmiersprache wäre oder gar gänzlich unnütz. Es ist vielmehr so, dass wir Dinge, die Java bereitstellt, nicht aber dafür andere Dinge, die es nicht bereitstellt, sehr wohl benötigen. Aus unserer Sicht der Dinge stellt sich das Verhältnis von Java, C und C++ folgendermaßen dar: C++ kann seine Herkunft von C schon allein durch den Namen sicherlich nicht leugnen. Die meisten Teile von C sind in C++ enthalten. Es bietet aber durch die Mittel zum objektorientierten und generischen Programmieren weit mehr. In Java findet man (derzeit) nur die Hilfsmittel zur Objektorientierung wieder. Es setzt sich aber insbesondere bei der Speicherverwaltung stark von C und C++ ab. Auf der anderen Seite gehört eine wesentlich umfangreichere Bibliothek zu Java dazu, die z.B. die Programmierung von GUIs oder Netzwerkfähigkeit ermöglicht. Diese Dinge spielen jedoch bei Algorithmen und Datenstrukturen, im Gegensatz zur Speicherverwaltung, eine untergeordnete Rolle. Letztere ist dem Programmierer in Java jedoch gänzlich aus den Händen genommen. Darüberhinaus gibt es viele weitere Details, die es dem Programmierer ermöglichen, effizienteren Code zu schreiben. Summa summarum erscheint uns daher die Verwendung von C++ für unseren Zweck sinnvoll

    Similar works