Allerdings hat der Free Pascal Compiler einen Kompatibilitätsmodus, mit dem er auch die Delphi-Syntax verarbeiten kann. Ich verwende selbst auch immer die Delphi-Syntax, weil ich sie gewohnt bin und schöner finde.
Wie gut funktioniert das denn dann?
Mir sind noch keine Unterschiede aufgefallen, aber bei relativ neuen Features wie Generics wäre ich mir nicht sicher, dass es 100 % kompatibel ist. Genau kann ich das aber nicht sagen, weil Generics erst bei Delphi 2009 hinzukamen, aber die letzte Version, die ich besessen habe, Delphi 2006 war.
Die größten Unterschiede stecken aber nicht in der Syntax sondern in den Klassenbibliotheken (
VCL vs. LCL).
Im Sinne von: Völlig unterschiedlich, einfach Suchen und Ersetzen würde nicht funktionieren?
Es ist größtenteils gleich. Wo die Unterschiede sind, kann ich aus dem Stegreif auch nicht sagen. Aber wenn das Projekt größer ist, steigt halt die Wahrscheinlichkeit, dass es doch irgendwo knirscht.
Vor allem ist das ein weiterer Grund, dass ich das lieber vorher entscheide und nicht "ich kann ja später immer noch...".
Ich meinte ja nicht, dass du gleich dein ganzes Projekt damit schreiben sollst. Einfach nur mal unverbindlich runterladen und damit rumspielen. Hello World schreiben. Taschenrechner programmieren. Gucken, ob du dich damit anfreunden kannst oder nicht. Das wird dir mehr bringen, als wenn wir hier noch ewig trocken herumphilosophieren.
Abgesehen davon wird es bei so kleinen Projekten aber auch kein Problem sein, später noch umzusteigen, vor allem nicht am Anfang.
Edit:
- Android, iOS, OSX und voraussichtlich ab Herbst Linux als Konsolenanwendung
Kann Lazarus schon lange und besser.
Wie funktioniert denn dort Remote Debugging heute?
Mein letzter Stand ist, dass es sehr kompliziert ist.
Bei Delphi installiere ich den PAServer, stelle den Zielrechner ein und drücke F9. Dann wird kompiliert, deployed und der Debugger startet, bei Bedarf auf Assemblerebene.
Das weiß ich jetzt nicht, habe selbst Lazarus für Android noch nicht verwendet. Würde ich auch eher nicht, ich würde da, wenn es geht, immer die offiziellen Tools nehmen, also in diesem Fall Android Studio. Aber für Desktopanwendungen auf Windows und Linux habe ich Lazarus schon verwendet, und kann nur sagen, dass es sehr gut funktioniert. Generell gibt es glaube ich kein anderes
GUI-Framework, das so viele Plattformen nativ unterstützt wie die LCL. Selbst Qt nicht. Also in dem Bereich ist Freepascal/Lazarus wirklich sehr gut.