Warum ist Delphi/Object-Pascal so eine unbeliebte Programmiersprache?
Hallo liebe Leser und Leserinnen,
Ich heiße Carsten und programmiere hauptberuflich mit der Programmiersprache Objekt Pascal in der Entwicklungsumgebung namens Delphi. Laut des „tiobe-index“, ein seit 2001 publiziertes und monatlich aktualisiertes Ranking von Programmiersprachen nach ihrer Popularität, steht Delphi/Object Pascal hinter neueren Programmiersprachen wie Swift oder Go nur auf Platz 19. Im März 2018 war Object Pascal noch auf Platz 13:
Außerdem findet man in verschiedensten Entwicklerforen immer wieder sehr lange Beiträge zu Themen wie „Warum ist Delphi so verhasst?“ oder „Delphi ist tot!“ und ähnliches. Weshalb ist Delphi überhaupt so unbeliebt?
Verbreitung / Preispolitik
Einer der Gründe ist die schlechte Verbreitung von Delphi. Für Delphi gibt es erst seit ca. einem Jahr eine kostenfreie Version. Deshalb konnten früher nie wirklich neue Nutzer dazugewonnen werden. Lediglich die Möglichkeit mit Lazarus, einer anderen IDE mit der in Object-Pascal programmiert werden kann, konnte genutzt werden, um mit dieser Programmiersprache zu arbeiten. Ein weiterer Grund für die Unbeliebtheit von Delphi ist die Preispolitik, die von Beginn an gepflegt wurde. Als Delphi 1 auf den Markt kam, gab es im RAD-Bereich fast noch nichts, weshalb es zu Beginn auch sehr beliebt und erfolgreich war. Auch weil zudem das Preis-Leistung-Verhältnis sehr gut war. Delphi hatte damals alle Voraussetzungen, um richtig beliebt zu werden, wenn da nicht die Preisgestaltung gewesen wäre. Regelmäßig hat man den Preis für Lizenzen angehoben, um nicht zu sagen verdoppelt. Andere Sprachen standen hingegen immer öfter (nahezu) kostenlos zur Verfügung.
„Die Syntax ist doof“
Generell haben Entwickler, die vorher nur mit anderen Programmiersprachen gearbeitet haben, kein Interesse daran, sich mit der Syntax wirklich zu beschäftigen. Die meisten reagieren nur mit einem abwertenden Blick, wenn sie hören, dass statt zwei geschweifter Klammern („{“ und „}“) ein „begin“ und „end“ eingesetzt werden soll. Dazu kommt, dass für die Zuweisung von Variablen anstatt ein einfaches „=“ ein „:=“ eingesetzt wird. Hier mal eine kleines Beispiel um den Unterschied zwischen Delphi und der Programmiersprache C# (C-Sharp) zu veranschaulichen:
Delphi:
function Addiere(Zahl1: Integer; Zahl2: Integer): Integer
begin
Result := Zahl1 + Zahl2;
end;
C# (C-Sharp):
int Addiere(int Zahl1, int Zahl2)
{
return Zahl1 + Zahl2;
}
Delphi ist zu alt
Delphi 1 wurde 1995 veröffentlicht und deshalb sind viele der Meinung, dass Delphi ausgestorben ist. Die meisten meckern dabei über die oben genannte Preispolitik und klagen über eine nicht vorhandene kostenlose Version, weshalb keine neuen Benutzer dazugewonnen werden können.
Meine eigenes Fazit
Meiner Meinung nach ist Delphi eine sehr gute Einsteigersprache, da Delphi aufgrund der Syntax sehr einfach zu lernen ist. Leider fehlte in den letzten Jahren wie oben beschrieben die kostenlose Version. Allerdings kam im letzten Jahr mit Delphi 10 eine kostenlose Starterversion. Da Delphi immer noch weiterentwickelt und sogar plattformübergreifende Programmierung bietet, bin ich keineswegs der Meinung, dass Delphi tot ist.
Über die Syntax der einzelnen Programmiersprachen lässt sich streiten. Manchen gefällt es besser, kurz und knapp mit einzelnen Zeichen wie z.B. den geschweiften Klammern zu arbeiten, andere arbeiten lieber mit ausgeschriebenen Wörter wie „begin“ und „end“. Ich bin überaus zufrieden mit Delphi und werde, auch wenn ich andere Programmiersprachen kenne, die nächsten Jahre nicht von Delphi abweichen!
Dem kann ich nur vollends zustimmen.
Object Pascal kommt wohl aus seiner Nische nicht mehr heraus. Sehr schade, vor allem da zu viele Sprachen sich am „schlechten“ C-Syntax anlehnen. Dies hat jedoch nur historische Hintergründe.
Auch ich werden weiterhin mit FPC/Lazarus glücklich sein und mich dem Mainstream verweigern.
Viele Grüße
Hannes
Leider stimmt es, was du zur Verbreitung und der Beliebtheit (bzw. dessen Mangel) rundherum.
Wer mal schaut, was es kostet, die kleinste Lizenz zu erwerben, erlebt einen Schock.
Die Gier von Herstellern ist halt häufig ein Problem.
Selbst die Lizenz für die Community Version muß ständig erneuert werden. Eine weitere unsinnige Hürde. Als wenn sich Delphi vor Testern kaum retten könnte 😉
Dabei ist Delphi Object Pascal eigentlich viel angenehmer als z.B. C#.
Die geschweiften Klammern werden halt immer nur durch begin und end ersetzt. Etwas mehr Schreibaufwand, ja, aber an der Funktionalität ändert sich nichts.
Und es sieht allemal eleganter aus als Sprachen die zu einem nennenswerten Teil nur aus Satzzeichen bestehen.
Ich habe „früher“ mit Turbopascal gelernt aber einen großen Teil meines Lebens mit verscheidenen Basic Dialekten gearbeitet. Selbst Visual Basic war gegen Ende seiner Entwicklungszeit ein ernstzunehmendes Tool.
Jetzt habe ich mich mit Delphi Object Pascal wieder beschäftigt und siehe da, es ist easy sich daran zu gewöhnen.
Das Einzige, was etwas nervt ist, dass es sich beim Compiler um einen single-pass Compiler handelt., so daß Procedures udn Functions immer vorweg definiert werden müssen. Das können andere Compiler leider besser.
Ansonsten ist es eine schöne und leicht zu erlernende Sprache die auch elegant aussieht. 🙂
Genau meine Meinung.
C# hat meiner Meinung nach auffällig viele Ähnlichkeiten mit Delphi. Habe gerade eine größere Anwendung in C# mit Visual Studio programmiert, die ich in Delphi 7 angefangen und dann mit wenigen Änderungen (nur bei Strings) in die Community Edition übertragen hatte (scheefer.homepage.t-online.de/numericalphysics).
Die Graphik läuft in Delphi merklich schneller als in Visual Studio und hat bequemere Funktionen (Füllen einer Fläche, ohne erst den Umriss zu definieren). Aber wegen des Lizenzproblems, gerade im Bildungsbereich, bin ich auf Visual Studio umgestiegen.
Warum sollte ich mir eine eigneschränkte Communityversion mit kleiner Community holen, wenn das Internet voll ist mit Tutorials zu beliebten Sprachen.
Die Syntax ist geschmachssache und da hat jeder seine eigenen vorlieben.
Aber wenn ich mir eine weit verbreitete, kostenlose und einfache Programmiersprache beibringen will, dann wähle ich eher Python als Delphi.
Auch kommen viele über Videospiele zum Programmieren und da sind die großen Vertreter die Engines Unity und Unreal mit den Sprachen c++ und C#