AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Lazarus (IDE) Von Delphi auf Lazarus umsteigen. Geht das?
Thema durchsuchen
Ansicht
Themen-Optionen

Von Delphi auf Lazarus umsteigen. Geht das?

Ein Thema von dummzeuch · begonnen am 24. Aug 2015 · letzter Beitrag vom 3. Okt 2015
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von IBExpert
IBExpert
Online

Registriert seit: 15. Mär 2005
692 Beiträge
 
FreePascal / Lazarus
 
#1

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 00:36
Moin,

ja, wir haben alle neuen Projekte seit mittlerweile 4 Jahren nur noch auf lazarus begonnen. Da wir damals ein großes neues ERP Projekt begonnen haben, stand die Frage im Raum: Womit entwickeln wir auch noch in 10 Jahren das System weiter? Und wer bietet echte und native Multiplattform Entwicklung ohne fette Frameworks ...

Zu dem Zeitpunkt hat sich Delphi XE* nicht gerade mit Ruhm bekleckert und stand ziemlich schnell nicht mehr oben auf der Liste. Einige Versuche später war dann die Entscheidung für Lazarus klar und aufgrund der von mir geplanten Architektur (Front End interpretiert Datenbankinhalte, um Formulare zu erstellen und die Business Logik befindet sich eh in der Firebird DB) war eh klar, das ich nahezu alles zur Laufzeit erstelle und nur ganz wenig Sachen im klassischen Formularmodus entwickeln werde.

Erst haben wir Code Typhoon eingesetzt, dann sind wir aber wieder umgesteigen auf Lazarus ohne die doch manchmal voreiligen Schritte im CodeTyphoon mitgehen zu müssen, die nicht immer gut waren und in einigen Bereichen auch manchmal lizenztechnisch nicht ganz sauber sind. Wenn wir was brauchen, was im Lieferumfang von Lazarus nicht dabei ist, bei CodeTyphoon aber schon, übernehmen wir den entsprechenden Ordner aus dem CodeTyphoon System in das Lazarus System und wenn das läuft (war bisher immer so), dann nutzen wir genau den Stand der Komponente, ggf nach einem rebranding (pl_* wird brp_* )

In der Zwischenzeit sind wir diverse Male auf neuere Lazarus Versionen umgestiegen und es gab nie Probleme, auch weil alles portabel ist, also nicht jeden stuss in die Registry schreibt, sondern lokale Konfig Dateien in definierbaren Pfaden nutzt, so das man die IDE auch auf dem USB Stick oder externe Platte an einem völlig neuen Rechner starten kann, ohne tagelang irgendwelchen Kram nachinstallieren zu müssen.

Obwohl unser ERP Projekt zunächst nur für win32 entwickelt wurde, war die Portierung zuerst auf win64 mit der Lazarus IDE (eine Codezeile musste angepasst werden) sehr schnell erledigt, obwohl das Gesamtprojekt mittlerweile in Lazarus auch 200000 Zeilen selbstgeschrieben Pascal Code hat. Da der erste Port so einfach war, hab ich den nächsten gleich hinterhergeschoben. Der Port auf MacOSX dauerte ca eine Stunde, um das Projekt dann in der Lazarus IDE, die nativ auf Mac läuft, compilieren zu können und auch gleich dort laufen zu lassen. Es waren halt hier und da noch typische windows api sachen drin, die man halt so immer gemacht hat. Dafür passende Multiplattform Lazarusroutinen zu finden, war meist einfach, oft sogar war die Lazarus Implementation wesentlich leisungsfähiger (Beispiel shellexecute->TProcess). Eine halbe Stunde später lief der komplette Quellcode dann auch nativ auf Linux und kompiliert in der Linux Lazarus IDE, ohne weitere Änderungen am MaxOSX kompatiblen Source. Das nenn ich Multiplattform.

Für diverse kleinere Projekte haben wir auch kleine Programme auf dem Raspberry Pi mit Lazarus gemacht, auch dort läuft die Lazarus IDE. Auch kleine Tests mit Android und iOS waren ausgesprochen interessant, aber mangels dafür zahlender Projektkunden fhlt uns da im Moment der Bedarf.

Was ich selber nie getestet hab, ist der Umstieg von einem vorhandenen Delphi Code auf Lazarus. Damit kann man sicherlich viel Zeit vertrödeln, aber wenn man konsequent ist, nimmt man das gleich zum Anlass, der eigenen Quellcode mal aufzuräumen. Große Teile lassen sich oft direkt oder mit wenig Änderungen übernehmen, sofern das nicht endlose Events hinter exostischen GUI Komponenten sind. Diese Art der Programmierung empfehle ich aber nachweislich schon seit ca. 15 Jahren auch in Delphi nicht mehr. Langlebige Projekte brauchen Architekturen, die über das Formularzusammenklicken hinausgehen. Das geht sowohl in Delphi als auch mit lazarus.

Das beste an dem Umstieg war, das ich nahezu alle Objektpascal und API Kenntnisse von Delphi sofort in die neue IDE übertragen konnte und wenn mal was nicht so war wie gewohnt, war geade da ein guter Punkt, um noch mal nachzudenken. Suche ich tagelang eine Komponente, die das wieder kann oder realisiere den Teil, den ich wirklich haben will, selbst mit Ownerdraw oder anderen Techniken. Da die selbstgeschrieben eh zur Laufzeit erzeugt werden, ist mir der ganze Objektinspektor Overhead auch völlig egal, das spart sehr viel Zeit für wichtigere Dinge.

Ob der Umstieg von Delphi auf Lazarus für euch vorteilhaft ist, kann man ohne nähere Kenntnis eurer Herangehensweise nicht pauschal beantworten. Man kann in jeder Programmiersprache, auch in Delphi und Lazarus, totalen Schrott programmieren, aber mit entsprechender Architektur lassen sich in Lazarus und in Delphi sehr gute Grundlagen für langlebige Projekte legen, mit denen man noch Jahre später glücklich ist. Ob das was embarcadero da macht, wirklich multiplattform ist, muss jeder selbst beurteilen, da es keine Delphi IDE auf Mac OSX gibt und nicht mal eine native Win64 Version der IDE existiert, ist da Lazarus sicherlich deutlich überlegen, von den Linux varianten gar nicht erst zu sprechen. Mit persönlich gefällt der Firemonkey Ansatz nicht, aber ich muss den ja auch nicht benutzen.

Da ich mittlerweile sicherlich 3000-4000 Stunden mit der lazaus IDE programmiert habe und vorher seit Delphi 0.9 im Jahr 1994 bis 2011 nahezu alles in Delphi gemacht habe, glaub ich schon, mir ein Urteil darüber erlauben zu können. Lazarus ist definitiv reif für den Einsatz im kommerziellen Umfeld.
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
Firebird 5 Update und Know-how Workshop – 28.8.-29.08.2025 64546 Mörfelden - Walldorf
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.677 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 07:39
Macht Ihr Lazarus selbst portabel, oder welche Quelle nutzt ihr?
Sven Harazim
--
  Mit Zitat antworten Zitat
ThomasBab

Registriert seit: 7. Mai 2007
Ort: Hallenberg
57 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 07:52
Macht Ihr Lazarus selbst portabel, oder welche Quelle nutzt ihr?
Man kann Lazarus mit Parameter aufrufen, und damit mitteilen, wo die Konfigurationsdateien liegen.
Thomas
  Mit Zitat antworten Zitat
Bambini
(Gast)

n/a Beiträge
 
#4

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 09:35
Der Port auf MacOSX dauerte ca eine Stunde, um das Projekt dann in der Lazarus IDE, die nativ auf Mac läuft, compilieren zu können und auch gleich dort laufen zu lassen. Es waren halt hier und da noch typische windows api sachen drin, die man halt so immer gemacht hat. Dafür passende Multiplattform Lazarusroutinen zu finden, war meist einfach, oft sogar war die Lazarus Implementation wesentlich leisungsfähiger (Beispiel shellexecute->TProcess). Eine halbe Stunde später lief der komplette Quellcode dann auch nativ auf Linux und kompiliert in der Linux Lazarus IDE, ohne weitere Änderungen am MaxOSX kompatiblen Source. Das nenn ich Multiplattform.
Das hört sich sehr gut an.
Gibt es ein Übersicht welche UI Komponenten für MacOS zur Verfügung stehen?
Sind diese native Controls oder wird da, wie bei FMX, alles selbst gemacht?
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 11:22
Nativ.

Siehe Lazarus Wiki: Status of native controls on each LCL Interface.
  Mit Zitat antworten Zitat
Benutzerbild von IBExpert
IBExpert
Online

Registriert seit: 15. Mär 2005
692 Beiträge
 
FreePascal / Lazarus
 
#6

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 11:30
Gibt es ein Übersicht welche UI Komponenten für MacOS zur Verfügung stehen?
Sind diese native Controls oder wird da, wie bei FMX, alles selbst gemacht?
Eine Übersicht bekommt man ganz einfach, in dem man mal Lazarus für den Mac runterlädt und installiert.
Lazarus arbeitet anders als Firemonkey auf Mac OSX mit wrappern für die nativen Komponenten, von denen
du in deinem Code nichts wissen musst. Ein TEdit ist ein TEdit, TButton ist TButton usw.

Hier findest du einen ganz guten Start:
http://wiki.freepascal.org/OS_X_Programming_Tips

Aber am einfachsten ist es wirklich, die einfach mal die IDE zu installieren und loszulegen.
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
Firebird 5 Update und Know-how Workshop – 28.8.-29.08.2025 64546 Mörfelden - Walldorf
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#7

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 17:44
Ich programmiere inzwischen nur mit Lazarus. Ok alles hobbymäßig, aber auch sonst ist Lazarus inzwischen für vieles geeignet.
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Sunec

Registriert seit: 31. Aug 2013
88 Beiträge
 
Delphi XE8 Architect
 
#8

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 17:39
Da ich mittlerweile sicherlich 3000-4000 Stunden mit der lazaus IDE programmiert habe und vorher seit Delphi 0.9 im Jahr 1994 bis 2011 nahezu alles in Delphi gemacht habe, glaub ich schon, mir ein Urteil darüber erlauben zu können. Lazarus ist definitiv reif für den Einsatz im kommerziellen Umfeld.
Das hört sich nicht schlecht an.

Werde demnächst nach Windows 10 umsteigen und dann versuchen komplett auf Delphi zu verzichten.

Welche Version des FPC verwendet ihr denn?
  Mit Zitat antworten Zitat
Benutzerbild von IBExpert
IBExpert
Online

Registriert seit: 15. Mär 2005
692 Beiträge
 
FreePascal / Lazarus
 
#9

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 17:47
Welche Version des FPC verwendet ihr denn?
Lazarus 1.4.2 mit fpc 2.6.4 (genau die version, die seit Juli released ist http://www.lazarus-ide.org/)
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
Firebird 5 Update und Know-how Workshop – 28.8.-29.08.2025 64546 Mörfelden - Walldorf
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.352 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Von Delphi auf Lazarus umsteigen. Geht das?

  Alt 25. Aug 2015, 22:36
Vor ein paar Jahren habe ich mir mal Lazarus angesehen und fand Delphi damals deutlich komfortabler (dem ersten Eindruck nach).

Mal zwei Fragen:
- Würde auch jemand Lazarus für reine Windows-Entwicklung bevorzugen wenn man bereits Delphi XEx hat (also der Kostenaspekt wegfällt)?
- Gibt es gängige Lösungen für Databinding bzw. ein View-Model-Framework?
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 16:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz