Zum Inhalt springen
L

Wikipedia · einfach zusammengefasst · Stand

Embarcadero Delphi

Delphi ist eine vom Unternehmen Borland entwickelte Entwicklungsumgebung für die Programmiersprache Object Pascal. Im November 2006 wurden die …

Inhalt5 Abschnitte
  1. 1. Überblick und Bedeutung
  2. 2. Sprache und Programmiermodell
  3. 3. Bibliotheken, Oberflächen und Datenverarbeitung
  4. 4. Entwicklung der Plattform
  5. 5. Editionen und verwandte Systeme

Überblick und Bedeutung

Delphi ist eine proprietäre, deutschsprachig verfügbare Entwicklungsumgebung (IDE) und zugleich der heutige Name der darin verwendeten Programmiersprache. Sie dient der schnellen Entwicklung von Anwendungen, besonders mit grafischen Benutzeroberflächen und Datenbankanbindung. Grundlage ist Object Pascal, eine objektorientierte Weiterentwicklung von Pascal. Delphi wurde von Borland entwickelt und erschien erstmals 1995. Die Entwicklungswerkzeuge wurden 2006 in die Tochtergesellschaft CodeGear ausgegliedert und 2008 an Embarcadero Technologies verkauft. Seit der Übernahme Embarcaderos durch Idera, Inc. im Jahr 2015 wird Delphi weiterhin unter der Marke Embarcadero angeboten.

Als aktuelle Version nennt der Artikel RAD Studio 13.1 Florence vom 19. März 2026. Die Entwicklungsumgebung läuft unter Windows, kann aber je nach Version Programme für mehrere Zielsysteme erzeugen. Typisch ist die visuelle Anwendungsentwicklung: Oberflächenelemente werden in einem Formulardesigner angeordnet und mit Programmcode verbunden. Delphi-Programme benötigen auf dem Zielsystem in der Regel keine zusätzlich installierte Laufzeitsoftware; Ausnahmen bestehen etwa bei .NET oder bestimmten Oberflächenelementen.

Sprache und Programmiermodell

Die Sprache Delphi gilt wegen ihrer Pascal-Abstammung als übersichtlich und gut erlernbar. Sie ist statisch typisiert: Der Typ einer Variablen steht grundsätzlich zur Übersetzungszeit fest. Zu den unterstützten Konzepten gehören Klassen, Klassenmethoden und Klassenvariablen, Schnittstellen (Interfaces), Generics für wiederverwendbaren typisierten Code, anonyme Methoden, dynamische Arrays sowie inline deklarierte Variablen mit Typinferenz. Mehrfachvererbung von Klassen wird nicht unterstützt.

Eigene Typen können als einfache Datentypen, Records, Klassen oder Schnittstellen definiert werden. Records können Methoden sowie automatisch ausgeführte Initialisierungs- und Finalisierungsmethoden besitzen. Klassen lassen sich durch Vererbung erweitern. Alternativ ergänzen sogenannte Class Helpers eine Klasse und ihre Nachkommen um Methoden und Eigenschaften, ohne die Klasse unmittelbar abzuleiten. Statische Arrays müssen anders als in vielen Sprachen nicht mit Index 0 beginnen, sondern dürfen jeden festgelegten Anfangsindex verwenden.

Strings verwaltet das Laufzeitsystem automatisch. Bei einer Zuweisung wird der Inhalt wegen der Referenzzählung zunächst weder kopiert noch erneut gespeichert. Daneben existieren klassische String-Typen ohne Referenzzählung. Aus Kompatibilitätsgründen unterstützt Delphi weiterhin das ältere, heute kaum verwendete Objektmodell aus der Turbo-Pascal-Zeit.

Bibliotheken, Oberflächen und Datenverarbeitung

Die Run Time Library (RTL) kapselt nichtgrafische Betriebssystemfunktionen. Seit XE2 steht sie auch für macOS und iOS, seit XE5 für Android und seit 10.2 Tokyo für Linux bereit. Die Visual Component Library (VCL) bildet vor allem Windows-Steuerelemente ab; auch nichtgrafische Komponenten wie Timer und Bilderlisten gehören dazu. Seit XE2 unterstützt sie Windows x64.

FireMonkey (FMX) ist das seit XE2 eingesetzte Framework für plattformübergreifende grafische Anwendungen. Es unterstützt die Betriebssysteme der RTL, ist aber nicht mit der VCL kompatibel; FMX-Programme sind erheblich größer als VCL-Programme. Seine Steuerelemente bilden eine Objekthierarchie. Sie wurden anfangs vollständig selbst gezeichnet, können auf manchen Plattformen inzwischen aber teilweise nativ umgesetzt werden. Der Funktionsumfang kann sich unterscheiden: Viele selbst gezeichnete Komponenten lassen sich beispielsweise frei drehen. FMX verwendet Fließkommazahlen für Koordinaten, um Rundungsfehler beim Skalieren zu vermeiden. Ein Stilsystem und ein Stildesigner ermöglichen plattformtypische oder eigene Darstellungen.

Internet Direct (Indy) unterstützt verbreitete Internetprotokolle. Für Nebenläufigkeit existiert neben der Klasse TThread seit XE7 die Parallel Programming Library (PPL). Sie bietet leichter nutzbare Tasks und Futures, die auf einem automatisch verwalteten Thread-Pool beruhen.

Für Datenbanken liefert Delphi das ältere, unidirektionale dbExpress und das modernere FireDAC mit. FireDAC unterstützt zahlreiche relationale und mehrere NoSQL-Datenbanken; die konkrete Auswahl hängt auch von den verfügbaren Datenbank-Clients der Zielplattform ab. Eine Entwicklerversion von InterBase und eine kostenlose, auch mobil verfügbare Light-Version werden mitgeliefert. Anwendungen können außerdem direkt die Windows-API ansprechen. Das erzeugt kleinere Dateien, ist jedoch deutlich weniger komfortabel als die Arbeit mit den Bibliotheken.

Entwicklung der Plattform

Delphi 1 erschien am 14. Februar 1995 für 16-Bit-Anwendungen unter Windows 3.x. Delphi 2 folgte im März 1996 mit 32-Bit-Unterstützung; Datenstrukturen und Zeichenketten konnten nun bis zu 2 GByte statt höchstens 64 KByte beziehungsweise 255 Zeichen umfassen. Delphi 3 führte 1997 unter anderem dynamisch ladbare Packages und Internetkomponenten ein. Spätere frühe Versionen ergänzten dynamische Arrays, ActionLists, ADO-Datenbankzugriff, UML-Modellierung, dbExpress und plattformübergreifende CLX-Komponenten. Delphi 8 von 2003 war ausschließlich für .NET bestimmt; Delphi 2005 vereinte Win32-, .NET- und C#-Entwicklung in einer IDE.

Delphi 2009 stellte RTL und VCL auf Unicode um, brachte Generics und anonyme Funktionen für Win32 und entfernte die .NET-Unterstützung. Delphi Prism führte Delphi-.NET anschließend auf Basis von Visual Studio und RemObjects Oxygene weiter, war sprachlich aber nicht vollständig kompatibel. Delphi 2010 konzentrierte sich auf Windows 7, Gestensteuerung und DataSnap. XE2 von 2011 war ein großer Schritt zur Mehrplattform-Entwicklung: Es führte Compiler für Windows 64 Bit und macOS 32 Bit, iOS-Kompilierung sowie FireMonkey ein. XE4 brachte einen eigenen ARM-Compiler für iOS und FireDAC, XE5 ergänzte Android. XE7 führte unter anderem den Multi-Device Designer, Bluetooth und parallele Programmierfunktionen ein; XE8 ergänzte iOS 64 Bit und den Paketmanager GetIt.

Seit Version 10 tragen die Veröffentlichungen Städtenamen. Seattle von 2015 verbesserte Windows-10- und Android-Unterstützung. Tokyo von 2017 führte einen 64-Bit-Linux-Compiler für Anwendungen ohne grafische Oberfläche ein. Rio von 2018 ergänzte inline deklarierte Variablen mit Typinferenz und verbesserte HiDPI-Unterstützung. Die Versionen 10.3.2 und 10.3.3 brachten 64-Bit-Unterstützung für macOS beziehungsweise Android. Sydney von 2020 führte Custom Managed Records, das Language Server Protocol und einheitliche Speicherverwaltung ein. Alexandria von 2021 unterstützte Windows 11, Apples M-Prozessoren, einen macOS-ARM64-Compiler und AVX.

Athens von 2023 ergänzte unter anderem mehrzeilige String-Literale, SKIA für FireMonkey, modernisierte VCL- und C++-Werkzeuge, Query-by-Example in FireDAC und einen JSON-Assistenten. Updates brachten eine geteilte Editoransicht, KI-Schnittstellen, 64-Bit-Builds von Compilern und LSP-Server sowie 2025 eine erste optionale 64-Bit-IDE. Florence erschien am 13. September 2025 mit ternärem Auswahloperator, NameOf, einer 64-Bit-Windows-IDE, KI-Komponenten, verbessertem FMX-Rendering, Masked Edit und den Compiler-Direktiven {$PUSHOPT} und {$POPOPT}. C++Builder wechselte dabei auf Clang 20 mit C++23-Unterstützung.

Editionen und verwandte Systeme

Delphi wird in Editionen mit unterschiedlichem Funktionsumfang angeboten. Für nichtkommerzielle Entwicklung existiert eine Community Edition; für Lehre und Studium gibt es akademische Lizenzen und Klassensätze. Die 2018 veröffentlichte Community Edition entspricht funktional weitgehend der Professional-Version, unterliegt aber besonderen Lizenzbedingungen. Die Umsatzgrenze beträgt 5.000 US-Dollar; die Lizenz muss nach einem Jahr erneuert werden, gegebenenfalls mit Wechsel auf die dann aktuelle Version. Zuvor gab es unter anderem kostenlose Personal- und eingeschränkte Turbo-Versionen sowie die Starter Edition, deren Umsatzgrenze 1.000 US-Dollar betrug.

Unter dem Namen AppMethod wurden von 2014 bis Anfang 2016 günstigere, plattformspezifische Pascal- oder C++-Editionen im Abonnement angeboten. Für C++ bietet Embarcadero den eng mit Delphi verbundenen C++Builder an. Kylix war ein inzwischen eingestellter Versuch, eine ähnliche Entwicklungsumgebung für Linux/X11 auf Intel x86 bereitzustellen.

Die freie Entwicklungsumgebung Lazarus verwendet den Free-Pascal-Compiler und ähnliche Konzepte, etwa die LCL anstelle der VCL. Ihr Quellcode ist zu großen Teilen Delphi-kompatibel; Lazarus läuft unter Linux, macOS und Windows und kann Programme für diese und weitere Plattformen erzeugen. WDSibyl ist eine Delphi-ähnliche, unter GPL weiterentwickelte Umgebung für OS/2 und Windows. Visual Basic bis Version 6 war Delphi konzeptionell ähnlich, bot aber weniger objektorientierte Möglichkeiten, benötigte eine eigene Laufzeitumgebung und erlaubte keine direkt eingebetteten Assemblerpassagen. Visual Basic 6 wurde 1998 veröffentlicht und seine Unterstützung im April 2008 eingestellt; seine Laufzeitumgebung wird dennoch bis einschließlich Windows 11 im jeweiligen Supportzeitraum unterstützt.

Weiterlesen

Microsoft Windows Microsoft Windows (englische Aussprache [ˈmaɪ.kɹoʊ.sɒft ˈwɪn.doʊz]) bzw. Windows ist eine Reihe proprietärer grafischer Betriebssystemfamilien von Microsoft … Programmiersprache Bei deklarativen Programmiersprachen ist der Ausführungsalgorithmus schon vorab festgelegt und wird nicht im Quelltext ausformuliert/beschrieben, sondern es … Integrierte Entwicklungsumgebung Eine integrierte Entwicklungsumgebung (IDE, von englisch integrated development environment) ist eine Sammlung von Computerprogrammen, mit denen die … Oracle (Datenbanksystem) Oracle Database (auch Oracle Database Server, Oracle RDBMS) ist eine Datenbankmanagementsystem-Software des Unternehmens Oracle. Quelltext Quelltext, auch Quellcode (englisch source code) oder unscharf Programmcode genannt, ist in der Informatik der für Menschen lesbare, in einer … Pascal (Programmiersprache) Besonderheiten · Sehr hohe Prozesssicherheit · Keine nullterminierten Zeichenketten · Strikte Trennung zwischen Programm, Funktionen und Prozeduren · Deklarationen. Speicherverwaltung Das Verwalten der höheren Ebenen der Speicherhierarchie wie beispielsweise des Cache-Speichers wird dagegen üblicherweise von der Hardware vorgenommen. Variable (Programmierung) In der Programmierung ist eine Variable ein abstrakter Behälter für einen Wert, der bei der Ausführung eines Computerprogramms auftritt. Methode (Programmierung) Methoden (englisch method oder member function) sind in der objektorientierten Programmierung Unterprogramme in der Form von Funktionen oder Prozeduren, … Typisierung (Informatik) B. Variablen, Funktionen oder Objekte (im Sinne der objektorientierten Programmierung) korrekt verwendet werden. Ein Ziel der Typisierung ist die Vermeidung von … Array (Datentyp) Ein Array ([əˈɹeɪ], englisch für Areal, Bereich, Anordnung, Aufstellung u. a.) ist in der Informatik eine Datenstruktur-Variante, mit deren Verwendung „viele … Datentyp Die Konkretisierung der Operationsmenge führt zu Abstrakten Datentypen beziehungsweise Algebraischen Strukturen. Mit der weiteren Konkretisierung der …