Delphi
Bei Delphi handelt es sich um eine der ersten grafischen Entwicklungsumgebungen, mit deren Hilfe sich Anwendungen
aus visuellen Komponenten wie Buttons, Scrollbars usw. am Bildschirm zusammenstellen lassen. Dieser leere Rahmen wird
dann mithilfe der zugrundeliegenden Programmiersprache inhaltlich so gefüllt, dass sich die gewünschte Funktionalität
ergibt. Die erste Version erschien 1995 als Delphi 1. Aktuell (Stand Ende 2017) ist die Version Delphi 10.2 Tokyo als
RAD Studio 10.2 (Rapid Application Development). Anfangs stand als Zielplattform nur Windows zur Verfügung, heute können
auch MacOS-, IOS-, Android- und Linux-Server-Anwendungen erzeugt werden. Delphi wurde anfangs von Borland entwickelt,
später an CodeGear verkauft und wird heute von Embarcadero Technologies weiterentwickelt und vertrieben. Als Programmiersprache
wurde und wird weitgehend eine Version von Object Pascal (Borland Pascal oder Embarcadero Pascal) benutzt. In neueren
Versionen können auch C# oder C++ für das gesamte Projekt oder in einzelnen Komponenten eingesetzt werden. Die anfangs
bedeutsamste Erweiterung bestand neben der Entwicklungsumgebung in der engen Einbettung von Datenbanken, die wie die
Oberflächenentwicklung durch einen Satz von spezifischen (überwiegend) visuellen Komponenten erfolgte. Dadurch wurden
einerseits einfache Anwendungen möglich, die ohne eine Programmzeile eigenen Codes auskamen, andererseits wurde die
algorithmische Weiterverarbeitung der ermittelten Daten stark erleichtert. Der Name Delphi soll folgerichtig indirekt von
Oracle abgeleitet worden sein, wobei Orakel im Altertum aus Delphi bekannt waren.
Lizensierung
Delphi-Lizenzen waren anfangs kostenpflichtig, später gab es unterschiedliche Versionen, wobei die Basisversionen z. B.
für Privatanwender kostenlos verfügbar waren. Diese Vertriebspolitik wurde im Laufe der Verkäufe des Systems wiederholt
geändert, sodass oft nicht ganz klar war, wann welche Version zu welchem Preis legal zur Verfügung stand. Diese Situation
wird dazu beigetragen haben, dass auf der Basis von Free-Pascal zahlreiche freie Entwicklungsumgebungen entstanden. Als
Beispiel mag Lazarus dienen, das auf den gängigen Betriebssystemen lauffähig und auch deshalb ziemlich verbreitet ist.
Aktuell (Stand Ende 2017) ist auch die Basis-Version von Delphi 10.2 Tokyo wieder kostenfrei erhältlich.
Delphi Projekt
In Delphi besteht ein Projekt aus einem Verzeichnis, das Verwaltungsinformationen sowie mindestens eine Programmdatei
(z. B. Project.dpr) und eine Unit (z. B. Unit1.pas) enthält, die meist ein Bildschirmfenster (z. B. Form1) beschreibt.
Dessen Eigenschaften sind in eine vom Benutzer fast nie zu bearbeitende Datei (z. B. Unit1.dfm) ausgelagert, was die
eigentliche Programmdatei übersichtlicher macht. Als Beispiel mag ein einfaches Fenster mit einem Button dienen, das
auf Buttonclick seine Farbe ändert. Die leicht gekürzte Programmdatei Unit3.pas für das Fenster und ein Screenshot der
Entwicklungsumgebung sind weiter unten angegeben.
Object-Pascal
Mit Object-Pascal als Basis hatte Delphi besonders im Ausbildungsbereich von Anfang an ein breites Fundament, da die
Lehrenden auf ihre Kenntnisse von Turbo-Pascal aufbauen konnten. Die sehr ähnliche Syntax erleichterte den Umstieg, der
eingebaute GUI-Bilder (Graphical User Interface) machte die Ergebnisse attraktiver und die Datenbankanbindung verbreiterte
das Spektrum der Anwendungsmöglichkeiten stark. Insbesondere Beispiele aus dem IuG-Bereich (Informatik und Gesellschaft)
wurden Schulen zugänglich.
Gegenüber Pascal wurde die in Delphi verwandte Version von Object-Pascal syntaktisch etwas, aber besonders inhaltlich
stark erweitert. Das geschah in der üblichen Weise über Bibliotheken, denen entsprechende visuelle Komponenten für Netz-
oder Cloud-Operationen, Zugriffe auf Betriebssystem- und andere Ressourcen zugeordnet wurden, sowie durch Möglichkeiten zum
kooperativen Arbeiten. Andere Konzepte wurden beibehalten. So compiliert Delphi in der Regel zu einer im jeweiligen Betriebssystem
ausführbaren Datei, was z. B. die Verteilung der Anwendungen einfach macht, und Objekte werden grundsätzlich auf dem Head abgelegt,
was fortgeschrittene Programmierkonzepte erleichtert. Leider sind die Entwickler aber auch für die Verwaltung des Heaps selbst
verantwortlich, etwa für die Freigabe von Speicher. Ohne eine automatische Garbage-Collection werden viele Projekte komplizierter
als erwartet. Allerdings gibt es Tools, die diese Funktionalität bereitstellen.
Einsatz und Verbreitung
Die guten Startbedingungen für Delphi durch die frühere Verbreitung von Pascal haben sich mit der Zeit anscheinend eher zu einer
Belastung entwickelt. Die Verwendung von syntaktisch C-ähnlichen Sprachen wie Java in der Ausbildung haben dazu geführt, dass
Sprachen mit vergleichbarer Syntax sehr viel beliebter sind. In aktuellen Programmiersprachenrankings findet sich Delphi deshalb
im niedrigen einstelligen Prozentbereich – wenn überhaupt. Auch sehr gute Entwicklungsumgebung ist kein Alleinstellungsmerkmal
mehr, seit z. B. Visual Studio, Eclipse oder NetBeans ähnliche Funktionalitäten bieten. Obwohl also die Punktnotation im OOP-Bereich
etwas oberhalb der elementaren Syntax in fast allen Sprachen, also auch in Delphi, sehr ähnlich ist, scheint die Verwendung von
begin…end-Strukturen statt geschweifter Klammern doch eine erhebliche Zugangsbarriere darzustellen.
unit Unit3;
interface
uses … // benutzte Bibliotheken
type tForm3 = class(TForm)
Button1: TButton; procedure Button1Click(Sender: TObject);
end;
var Form3: tForm3;
implementation
{$R *.dfm}
procedure TForm3.Button1Click(Sender: TObject);
begin
Color := clRED // nur diese Codezeile muss „per Hand“ eingegeben werden
end;
end.
Aktuelle IT Jobs
» IT-Administrator (m/w/d)» Wirtschaftsinformatiker*in als Stv. Teamleitung Vertriebs-IT (m/w/d) Schwerpunkt: Mobile Ticketing» Informatiker (m/w/d) als Software Engineer (m/w/d) Shop Floor Automation» IT-Systemadministrator (m/w/d)» Softwareingenieur/Experte Level 2 (m/w/d) im Bereich Digitalisierung (Dekarbonisierung)» alle Jobs anzeigen
Abbildung 1: Screenshot Delphi Entwicklungsumgebung