Vergleich von Delphi und Visual C++ - Inhalt
Vergleich von Delphi und Visual C++ - Inhalt
Vergleich von Delphi und Visual C++ - Inhalt
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Vergleich</strong> <strong>von</strong> <strong>Delphi</strong> <strong>und</strong> <strong>Visual</strong> <strong>C++</strong> - Kapitel 2A<br />
abwärtskompatibel zum bisherigen C sein sollte. Der neue, elementare Sprachkonstrukt "class" ist eine Erweiterung des<br />
C-Schlüsselwortes "struct" <strong>und</strong> war somit den C Programmierern vertraut. So sagt Stroustrup: "Mit dem Entwurf <strong>von</strong> <strong>C++</strong> wollte ich<br />
ein Werkzeug zur Lösung <strong>von</strong> Problemen schaffen <strong>und</strong> nicht eine bestimmte Behauptung beweisen; die anschließende Entwicklung<br />
dieser Sprache war auf die Bedürfnisse der Programmierer ausgerichtet." [6]<br />
Eine allgemeingültige Sprachdefinition wurde durch ihn im Buch "The <strong>C++</strong> Programming Language" gegeben <strong>und</strong> wird mittlerweile<br />
durch ein internationales Komitee standardisiert (ANSI / ISO) <strong>und</strong> beständig weiter entwickelt. Die derzeit aktuell gültige Version<br />
trägt die Nummer 3.0. Eine Vielzahl bestehender <strong>C++</strong> Compiler halten sich, ebenso wie <strong>Visual</strong> <strong>C++</strong> der Firma Microsoft, relativ<br />
streng an diese Vorgaben, bieten darüber hinaus aber noch zusätzliche Erweiterungen an.<br />
PASCAL wurde 1970 durch Prof. Niklaus Wirth mit dem Ziel entwickelt, eine kleine Lehrsprache zu Unterrichtszwecken zu<br />
erhalten, anhand derer gute Programmiertechniken demonstriert werden konnten. Der Name Pascal wurde zu Ehren des französischen<br />
Mathematikers <strong>und</strong> Philosophen Blaise Pascal (1623 - 1662) gewählt. Pascal zeichnet sich durch starke Typbindung <strong>und</strong> eine Reihe<br />
vorgegebener Typen aus, bietet aber auch die Möglichkeit, benutzerdefinierte Typen zu erstellen. Auch diese Sprache fand viele<br />
Anhänger <strong>und</strong> verbreitete sich insbesondere deswegen rasch, weil bald für alle gängigen Computersysteme Compiler zu Verfügung<br />
standen.<br />
Auch Standard-Pascal wurde vor einiger Zeit normiert, bekannt unter dem Namen ISO-Pascal. 1989 wurde eine erweiterte<br />
Normierung unter dem Namen "Extended Pascal" veröffentlicht (ISO 10206). Man hat seit dem jedoch versäumt, Anpassungen<br />
vorzunehmen, so daß bis heute standardisierte Vorgaben zu objektorientierten Erweiterungen fehlen. Einzig ein unverbindlicher<br />
Bericht unter dem Namen "Technical Report on Object-Oriented Extensions to Pascal" wurde bisher veröffentlicht. [8]<br />
Trotzdem hat sich Pascal ständig weiter entwickelt <strong>und</strong> besitzt heute ebenfalls objektorientierte Spracherweiterungen. Erweiterungen<br />
haben die Firmen vorgenommen, die kommerziell Compiler für Pascal entwickelt haben. Dabei hat sich der Softwarehersteller<br />
Borland hervorgetan, der in Pascal frühzeitig objektorientierte Erweiterungen implementierte. Der ihrer aktuellen<br />
Entwicklungsumgebung "<strong>Delphi</strong>" zugr<strong>und</strong>e liegenden Sprache haben sie den Namen "Object Pascal" verliehen.<br />
<strong>C++</strong> <strong>und</strong> Object Pascal besitzen sehr viele Gemeinsamkeiten. Neben den nicht zu übersehenden Unterschieden im Sprachumfang<br />
finden sich aber auch häufig Unterschiede im Detail, die zunächst leicht übersehen werden können. Deswegen soll im folgenden der<br />
Sprachumfang beider Systeme detailliert betrachtet <strong>und</strong> verglichen werden. Alle Angaben zu <strong>C++</strong> beziehen sich auf das<br />
Entwicklungssystem "Microsoft <strong>Visual</strong> <strong>C++</strong> Version 4.00 Professionell Edition" für INTEL-basierte Systeme. Ausführungen zu<br />
Object Pascal beziehen sich auf die konkrete Realisierung in Borlands Compiler "<strong>Delphi</strong> Version 2.0 Client/Server". Beide Systeme<br />
laufen nur auf Windows 32 basierenden Betriebssystemen <strong>und</strong> können auch nur für diese Betriebssysteme Maschinencode erzeugen.<br />
2.3 Sprachumfang beider Systeme<br />
Einen ersten Eindruck <strong>von</strong> der Komplexität der beiden Sprachen bietet folgende Tabelle (erweitert nach [5]):<br />
Sprache Schlüsselworte Anweisungen Operatoren Seiten Dokum.<br />
Pascal 35 9 16 28<br />
Modula-2 40 10 19 25<br />
Object Pascal (<strong>Delphi</strong> v2.0) 92 24 23 198<br />
C 29 13 44 40<br />
<strong>C++</strong> v1.0 42 14 47 66<br />
<strong>C++</strong> v3.0 48 14 52 155<br />
<strong>Visual</strong> <strong>C++</strong> v4.0 83 22 61 291<br />
Ada 63 17 21 241<br />
http://ourworld.compuserve.com/homepages/praxisservice/kapit2a.htm (8 of 24) [19.05.2000 15:30:03]