Jorg3000 hat geschrieben: Di 13. Mai 2025, 12:00
Von externen Frameworks halte ich mich auch möglichst fern, denn ich kann nicht zusätzlich den Support für die Fehler in fremden Programmteilen übernehmen.
Naja, mit Lazarus benutzt man schon mal die RTL, FCL und LCL, wobei grade die RTL und FCL einen haufen Units Beinhalten die über die Jahre von
sehr vielen contributern gesammelt wurden und z.T. seit der initialen Contribution nicht mehr wirklich angefasst wurden.
Also ich mag oftmals externe Bibliotheken nicht weil es nervtötend sein kann sie einzubinden, man schauen muss das sie Lizenzrechtlich kompatibel sind, etc.
Mit reinen Source Bibliotheken geht das ja noch, die kann man einfach als git submodule in sein git repo werfen und mit relativen Pfaden in Lazarus angeben. Solabd aber LPKs drin sind mit Visuellen Komponenten die in Lazarus installiert werden müssen, wirds schon kompliziert. Und es gibt nichts schöneres ein Programm mit Lazarus zu öffnen und erst mal 10 millionen Meldungen über nicht gefundene Komponeten wegklicken zu dürfen
alfware17 hat geschrieben: Di 13. Mai 2025, 18:13
Ich habe wahrscheinlich wieder das falsche Fremdwort benutzt und meinte neben den Frameworks vor allem so ein Zeug wie Microsofts .NET - wo also (nach meinem Verständnis) der Programmcode gar nicht compiliert wird sondern einfach nur mit riesigen RTL zusammen in eine EXE gesteckt und dann irgendwie interpretiert wird und der Programmierer eigentlich nur nicht viel mehr macht als zusammenklicken. Aber haut mich nicht - ich mußte das zum Glück niemals machen, mein professionelles Entwickler-Leben endet bei sowas wie Cobol und bestenfalls noch Java am Großrechner. Pascal/Lazarus mache ich nur privat aus Spaß an der Freude, wenn allerdings auch schon sehr lange...
Doch es wird Kompiliert, sogar auch zu Maschinencode, eben nur nicht zu dem Code deiner Maschine. .Net ganuso wie Java sind VM basierte Sprachen, also der Quellcode wird in eine Custom Assembly für eine VM, z.B. bei Java die JVM oder bei .Net die CLR kompiliert. Wenn du dann die Executable ausführst startest du praktisch eine Lightweight VM die dann das Programm ausführt.
Du kannst mit dem FPC deine Pascal Programme übrigens auch für die JVM kompilieren, das unterstüzt der FPC genauso wie x86_64 Win64 oder ARM Linux.
Das hat auch seine Vorteile, denn die VM wird eben nicht in die Exe gepackt sondern auf dem Zielsystem installiert. D.h. wenn du dein Programm für die JVM schreibst dann läuft es auf jedem Rechner der eine JVM installiert hat exakt gleich. Und die JVM gibt es für sehr viele Geräte, Radios, Fernseher, SmartPhones, PCs, selbst SmartCards wie Bankkarten oder deinem Reisepass, auf denen läuft das so genannte JavaCard OS, was auch im endeffekt eine Form der JVM (sog. Micro JVM) ist.