AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi vs. Free Pascal

Ein Thema von johndoe049 · begonnen am 4. Mär 2024 · letzter Beitrag vom 13. Mär 2024
Antwort Antwort
Seite 8 von 9   « Erste     678 9      
Benutzerbild von IBExpert
IBExpert

Registriert seit: 15. Mär 2005
672 Beiträge
 
FreePascal / Lazarus
 
#71

AW: Delphi vs. Free Pascal

  Alt 9. Mär 2024, 17:51
Als ergänzende Strategie für Konvertierungsversuche von delphi gui formularen (gilt auch für wechsel auf neue Delphi
version, die evtl eure erforderlichen komponenten nicht installierbar haben):

Man kann einfachen Kram ja direkt in lazarus öffnen und konvertieren, aber das ist eben wirklich selten 100% erfolgreich
für reale Projekte mit jahrelanger Geschichte.

Meistens sind die pas/dfm ja so aufgebaut, das delphi die komponenten dann zur Entwicklungszeit bereits laden kann
und auch nett auf dem bildschirm darstellt, wenn dafür vorgesehen. Wenn man nun die gleiche Kombination in Lazarus
direkt lädt, kommt von der lazarus IDE dann genau wie bei einem Delphi, das die ganzen Komponenten auch nicht hat,
bei jeder Komponente eine Fehlermeldung. Das kann einen schnell verzweifeln lassen.

Daher mit solchen Formularen mal einfach versuchen, den Inhalt der dfm zu konvertieren, bei delphi gab es dafür
immer gexperts components2code. Ergebnis ist dann: alles das was du vorher markiert hattest, wird als instanzvariable
mit create instanziiert und anschliessend weden alle properties zur laufzeit gesetzt, die normalerweise aus der dfm
kommen. danach packst du den code in dein form oncreate event und löscht die gesamten markierte komponenten. das geht
oft überraschend gut.

Wenn man sein formular schon mal so umgebaut hat, kann es in delphi bei bedarf noch weiterhin benutzt werden, meckert dann
aber nur beim compilieren, wenn irgendwelche Klassen gewisse eigenschaften nicht haben oder die ganze Klasse unbekannt
ist.

Alle komponenten müssen dann gar nicht mehr installiert sein. Ist zwar dann nicht mehr so komfortabel, das im Formular
durch anklicken mit dem Objektinspektor zu bearbeiten, aber ganz oft sieht man auch erst dann in dem dadurch entstandenen
Code, was da alles mit wem zusammenhängt. Und auch das sind oft ruselige Altlasten, die man gar nicht so mehr auf
dem plan hatte.

Das damit neu erzeugte formular, was eigentlich keins mehr ist, kann dann oft realtiv leicht mit compiler direktiven
angepasst werden, wenn es bei der Zielplattform (egal ob neue delphi Version oder lazarus) die komponente gar nicht
in der IDE gibt oder andere Properties und events hat.

Und eigentlich komplexe GUI Komponenten, die du nur in alten Versionen in deinem Delphi verfügbar hast, kannst du dann
in einer simplen unit ggf selber von was ähnlichem ableiten und dir bei jeder Property noch mal überlegen, ob du das
überhaupt weiterhin so haben willst.

wie jaenicke schon schrieb, der große Vorteil wäre wenn es eh nicht mehr alles vermischt in form/pas/dfm befindet, aber
die realität von vielen Projekten ist nun mal anders. Den o.a. erzeugten Code, der das formular ohne dfm erstellt, kannst du
dann aber schon mal als basis in eine andere Unit packen.

Und das ist dann wesentlich einfacher lauffähig zu machen, als wenn du erst mal versuchst, sämtliche von dir benutzten
Komponeten in passender version in die Ziel IDE zu bringen, insbesondere wenn es den Komponentenhersteller gar nicht
mehr gibt oder der die Sachen in neuen Versionen so umgebaut hat, das die eh nicht mehr kompatibel wäre.

Viele Komponenten haben einen riesen overhead für visuelle Delphi IDE Integration, würden aber zur Laufzeit erzeugt
auch so benutzbar direkt aus der Unit sein, auch wenn es in der IDE gar nicht mehr installierbar ist.

Ein projekt so in der Art umzubauen ist zwar immer noch keine 5 minuten klick job, aber deutlich effektiver, als
zu versuchen, alte fremdkomponenten in neuer IDE version installierbar zu machen, egal ob delphi oder lazarus.

In Lazarus gibt es dafür auch mitgelieferte units, auf deren basis man das ähnlich wie in gexperts selber
bauen könnte

./components/lazutils/compwriterpas.pas
This writes the .dfm as a routine that can be called to create the form with the .dfm properties.
See examples/pascalstream/
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
IBExpert and Firebird Power Workshops jederzeit auch als Firmenschulung
  Mit Zitat antworten Zitat
DaCoda

Registriert seit: 21. Jul 2006
Ort: Hamburg
143 Beiträge
 
Delphi 12 Athens
 
#72

AW: Delphi vs. Free Pascal

  Alt 10. Mär 2024, 12:28
Ich habe FPC und Lazarus auch schon mal "getestet", konnte mich aber mit der IDE von Lazarus nicht so recht anfreunden.
Eventuell liegt es daran, das ich seit Boland-Pascal mit Borland / Embarcadero Compilern bastel...
Ok, das Goldeselprinzip mit den hohen Gebühren finde ich auch nicht so toll, aber Entwicklung kostet eben Zeit und damit Geld.
Bei den Free-Pascal Geschichten kostet es auch Zeit, dann aber eben Freizeit... Die Entwickler bei Embarcadero müssen aber davon irgendwie ihr Leben finanzieren

Also jeder wie er es mag und kann...
Debuggers don’t remove bugs, they only show them in slow-motion.
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch
Online

Registriert seit: 11. Aug 2012
Ort: Essen
1.605 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#73

AW: Delphi vs. Free Pascal

  Alt 10. Mär 2024, 12:47
Daher mit solchen Formularen mal einfach versuchen, den Inhalt der dfm zu konvertieren, bei delphi gab es dafür immer gexperts components2code. Ergebnis ist dann: alles das was du vorher markiert hattest, wird als instanzvariable mit create instanziiert und anschliessend weden alle properties zur laufzeit gesetzt, die normalerweise aus der dfm kommen. danach packst du den code in dein form oncreate event und löscht die gesamten markierte komponenten. das geht
oft überraschend gut.
Ja, das funktioniert meistens, insbesondere kann man den Code, wenn er nicht compiliert, besser anpassen als das DFM / LFM.

Allerdings verliert man damit auch einen Großteil der Bequemlichkeit, die die Softwareentwickung mit Delphi / Lazarus (Visual Basic) so schnell und beliebt macht.

Ich bin zu Delphi gekommen, weil ich die Bequemlichkeit des visuellen Designers (damals Visual Basic 3) mit einer mächtigeren Programmiersprache kombinieren wollte. Und ich bin über die Jahre dabei geblieben, weil es dadurch ziemlich gut alle meine Anforderungen (und meine Faulheit) abgedeckt hat. Wenn ich den Designer aber aufgeben muss, kann ich auch gleich zu irgendeiner weiter verbreiteten Sprache wechseln, wo man die GUI per Code erzeugen muss.
Thomas Mueller
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#74

AW: Delphi vs. Free Pascal

  Alt 10. Mär 2024, 13:15
Zitat:
Wenn ich den Designer aber aufgeben muss
Diese Screenshots sehen so aus, als ob es einen Designer gibt?

https://wiki.lazarus.freepascal.org/Screenshots
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.587 Beiträge
 
Delphi 11 Alexandria
 
#75

AW: Delphi vs. Free Pascal

  Alt 10. Mär 2024, 13:20
Diese Screenshots sehen so aus, als ob es einen Designer gibt?
Das war die Antwort auf das Zitat und den Vorschlag, die Komponenten einfach per Konverter in Code umzuwandeln, der beim Laden des Formulars ausgeführt wird, so dass sie nicht mehr auf der Oberfläche liegen.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#76

AW: Delphi vs. Free Pascal

  Alt 10. Mär 2024, 13:54
Komponenten per Code, aber nur, wenn es auch eine automatische Ausrichtung gibt,
sonst wirst'e doch bei späteren Änderungen irre.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#77

AW: Delphi vs. Free Pascal

  Alt 11. Mär 2024, 09:29
Eine ganz dumme Frage: Kann ich meinen Code (nicht die grafischen Formulare) in einem FreePascal-Projekt auch mit einer IDE wie VS Code schreiben und evtl. auch debuggen?

(Habe FreePascal noch nie angefasst)
  Mit Zitat antworten Zitat
atari1040

Registriert seit: 18. Mai 2022
Ort: Nur der HSV
113 Beiträge
 
FreePascal / Lazarus
 
#78

AW: Delphi vs. Free Pascal

  Alt 11. Mär 2024, 09:38
Eine ganz dumme Frage: Kann ich meinen Code (nicht die grafischen Formulare) in einem FreePascal-Projekt auch mit einer IDE wie VS Code schreiben und evtl. auch debuggen?

(Habe FreePascal noch nie angefasst)
das habe ich mit meinen Konsolenanwendungen so gemacht, allerdings mit dem Debugger "writeln" .
Es gibt für VSCode einige Pascal Extensions wie OmniPascal usw.
Bei Youtube nach vscode und lazarus oder pascal suchen. Da gab es einige Videos zu.
Reinhard
Garbage Collector ... Delphianer erzeugen keinen Müll, sie kaufen und lizensieren ihn sogar
  Mit Zitat antworten Zitat
TSchnuckenbock

Registriert seit: 20. Jul 2017
Ort: Lüneburger Heide
71 Beiträge
 
Delphi XE5 Professional
 
#79

AW: Delphi vs. Free Pascal

  Alt 13. Mär 2024, 17:11
Ich bin doch etwas überrascht, wieviele Delphianer ähnlich wie ich Lazarus/FPC parallel nutzen bzw. immer etwas im Auge behalten.
Beruflich ist bei mir Delphi angesagt und wird es wohl auch noch die letzten Jahre bleiben.
Bei den jungen Kollegen sehe ich, daß Delphi/Pascal scheinbar ausgedient hat. Die sind ziemlich auf dem Python-Trip bzw. Go und Rust habe ich auch schon gesehen. Und möglichst alles soll "Web" sein. Die Jungschen streuben sich bei Delphi ziemlich. Wat de Buer nich kennt, dat frett he nich.

Ich habe eben mal nachgesehen: Ich müßte so um 2005 oder wenig später das erste mal Lazarus ausprobiert haben.
Wenn ich dann sehe, was die Jahre alles dazugekommen ist, dann ist das schon der Hammer.
FPCDeluxe oder der OPM (Online Package Manager) sind eine feine Sache.

Was ich immer im Hinterkopp habe ist die Tatsache, daß Lazarus auch auf Linux läuft. Seit Jahren schiebe ich den Schritt vor mir her, privat von Windows auf Linux umzusteigen. Ich denke, spätestens mit Ende meines Jobs werde ich das in Angriff nehmen.
Und wenn man dann eine IDE mit Pascal für lau zur Verfügung hat, wäre ich fast wunschlos glücklich.

Ich verfolge auch das deutsche Lazarus-Forum, früher auch noch das englisch-sprachige. Da tummeln sich überall viele hilfsbereite Leute.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#80

AW: Delphi vs. Free Pascal

  Alt 13. Mär 2024, 17:42
Und wenn man dann eine IDE mit Pascal für lau zur Verfügung hat, wäre ich fast wunschlos glücklich.
Delphi 6/7/2005 Personal Edition
Turbo-Delphi Explorer (2006/2007)
Delphi Starter (ab XE)
AppMethod (bloß kein "Delphi" im Namen oder sonstirgendwo auf der Webseite erwähnt) (Delphi 10.0)
Community Edition (seit Delphi 10.3)
https://www.embarcadero.com/de/products/delphi/starter
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 8 von 9   « Erste     678 9      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz