Delphi Definition
Delphi, früher Object Pascal, ist eine von der Firma Borland entwickelte objektorientierte Erweiterung der Programmiersprache Pascal.
Zuerst eingeführt wurde sie mit der Entwicklungsumgebung Delphi, inzwischen ist sie mit Kylix auch für Linux verfügbar. Auch von Drittanbietern wurde diese Sprache eine Zeit lang angeboten, so von Speedsoft, einer deutschen Firma, unter dem Namen Speed Pascal bzw. Sibyl, als auch von der britischen Firma fPrint UK Ltd. unter dem Namen Virtual Pascal. Beide wurden ursprünglich für OS/2 entwickelt und später nach Windows und Linux portiert. Die Entwicklung von Sibyl durch die Firma Speedsoft wurde anscheinend eingestellt, und die Quelltexte wurden teilweise veröffentlicht. Einige Entwickler entwickeln Sibyl als Open-Source Projekt, unter dem Namen WDSybil, weiter. Virtual Pascal ist inzwischen ebenfalls als Freeware erhältlich. Daneben gibt es noch das ebenfalls kostenlose FreePascal, welches unter der GPL steht und mit Lazarus als RAD-IDE ein freies Gegenstueck zu Borlands Implementierungen bietet.
Object Pascal ist nicht die erste objektorientierte Erweiterung von Pascal. Borland hatte bereits bei Version 5.5 von Turbo Pascal ein Objektmodell eingeführt, welches interessanterweise von den Delphi-Compilern bis Version 7.0 immer noch unterstützt wird, wenn man auch nach einer Dokumentation vergeblich sucht. (Delphi 8 für .NET unterstützt sie nicht mehr.) Mit dem Erscheinen von Borland Delphi 7 wurde die Programmiersprache offiziell von ObjectPascal in Delphi language umbenannt mit der Begründung, das sich Delphi inzwischen so weit fortentwickelt habe, daß es mit Object Pascal nicht mehr viel gemein habe.
Object Pascal ist die Grundlage der visuellen Klassenbibliothek Visual Component Library (VCL), sowie der neueren Component Library for Cross Platform (CLX), auf der Kylix basiert. Beide Bibliotheken sind stark miteinander verwandt, und es ist häufig einfach, eine für die VCL geschriebene Komponente nach CLX zu portieren. Auch das Handling von Variablen unterscheidet sich in Kylix und Delphi.
Ein Unterschied zu z.B. C++ ist, dass es nicht möglich ist Objekte auf dem Stack anzulegen, d.h. alle Objekte werden auf dem Heap angelegt (mit Ausnahme der alten Objekte aus Turbo Pascal, die auch nur eingeschränkt genutzt werden können). Viele der Elemente und Ideen von Object Pascal sind in die neue Programmiersprache C# und das Microsoft .NET Framework übernommen worden. Einer der Gründe ist, dass Anders Heijlsberg, vormals Mitentwickler von Delphi bei Borland, zu Microsoft wechselte und maßgeblich an der Entwicklung von C# beteiligt war.
|