web-dev-qa-db-fra.com

Pourquoi un programmeur Delphi utiliserait-il Lazarus comme IDE au lieu d'utiliser l'IDE de Delphi?

J'ai été très satisfait de Delphi IDE pour la programmation dans Delphi.

Mais j'ai entendu parler de l'environnement de programmation Lazarus , et j'ai également entendu que certains programmeurs Delphi l'utilisaient à la place de l'IDE Delphi.

Quels sont les avantages de Lazarus par rapport à l'IDE Delphi, et pourquoi un programmeur Delphi devrait-il ou devrait-il y basculer?


Les réponses me laissent avec plus de questions qu'auparavant. Il semble y avoir un certain désaccord quant à savoir si Lazarus peut ou ne peut pas être utilisé comme éditeur dans le développement de code Delphi. Je suppose que je pensais que vous pourriez tout laisser dans Delphi et simplement changer d'IDE. La section Lazarus pour les utilisateurs Delphi du wiki Lazarus dit:

La première chose à faire lors de la conversion d'un projet Delphi
Après avoir ouvert Lazarus, vous devez aller dans Outils puis Convertir le projet Delphi en Projet Lazarus. Cela ne fera pas tout pour vous, mais vous prendra néanmoins une bonne partie du chemin. Notez que les outils de conversion de l'IDE Lazarus sont généralement des conversions unidirectionnelles. Si vous devez conserver la compatibilité Delphi afin de pouvoir compiler votre projet avec Delphi et Lazarus, pensez à convertir vos fichiers avec XDev Toolkit à la place.

Parce que Lazarus est gratuit n'est pas une raison pour changer, mais ne vous pénalise pas dans les $ physiques pour le changement. (Vous devrez encore investir votre temps pour convertir et apprendre. Time = $).

Mes conclusions autant que je comprends de vos réponses sur la raison pour laquelle quelqu'un pourrait passer de Delphi à Lazarus: il doit évidemment fournir quelque chose que Delphi ne peut pas actuellement. Actuellement, c'est un support multiplateforme et peut-être un support 64 bits. Delphi avait Kylix à un moment donné, mais pas le support Mac.

Mais avec ces deux et 64 bits promis bientôt par Embarcadero, vous avez répondu à ma question en me disant qu'il n'y a aucune raison (au moins pour moi) de changer.

44
lkessler

Un programmeur Delphi ne peut pas utiliser Lazarus pour écrire du code Delphi car Lazarus n'est pas Delphi. Lazarus est en fait un IDE et un tas de bibliothèques de classes Delphi-ish pour Free Pascal. Mais notez, des choses comme la VCL de Delphi n'est pas là, et pour être parfaitement émoussé le IDE et les expériences de débogage dans Lazarus sont assez inégales, mais elles sont gratuites, donc cela compte beaucoup.

En bout de ligne, Delphi <> Lazarus. Utilisez Delphi si vous voulez un grand IDE et débogueur énorme support tiers et support technique que vous ciblez MS Windows, plus vous êtes prêt à payer pour cela. Utilisez Lazarus (Pascal gratuit) si vous voulez un Free IDE qui prend en charge plusieurs plates-formes et possède une syntaxe Delphi-ish.

20
Tim Jarvis

D'accord. Il s'agit d'un ancien fil de discussion, mais qui pourrait nécessiter une mise à jour. J'ai arrêté d'utiliser Delphi, il y a peut-être une décennie, en grande partie parce que je n'avais pas le choix. Ayant passé plus de 5 ans à travailler en tant que codeur Delphi, j'étais à nouveau étudiant et les prix de Delphi étaient tout simplement scandaleux. Le problème avec Delphi n'a jamais été Delphi. Delphi était un système génial, mais Borland (et plus tard ses successeurs) a complètement mal compris le monde informatique en mutation. Microsoft a été en mesure de fournir un environnement de programmation, que vous pouvez télécharger gratuitement, et son environnement .NET était comparable à la VCL de toutes les manières importantes, tandis que même une version de base de Delphi casserait votre banque ou serait carrément inaccessible aux étudiants les budgets. Le résultat final est qu'en l'absence de nouveaux programmeurs Delphi en ligne, il est devenu une proposition risquée pour les entreprises de continuer à utiliser. Enfin, avec l'essor de Linux, Kylix s'est avéré être un naufrage total d'un environnement, n'utilisant pas les chaînes d'outils d'interface utilisateur disponibles et avec une odeur suspecte de Wine qui le pénétrait, surmonté d'une attitude insultante envers les logiciels GPL qui le traitaient comme s'il était shareware. Enfin, lorsque Turbo Delphi est sorti de nombreuses années plus tard, il n'a pas pu utiliser les ressources incroyables disponibles via des sites comme les sites de composants tories. Il était clair que Borland n'avait aucun respect pour son écosystème de codeurs.

Lazarus semblait donc sortir de tout cela, prenant très longtemps à gesticuler et visant apparemment une sorte d'analogue de Delphi 4, considéré par beaucoup comme l'un des plus propres et des plus nets de la ligne Delphi. Il respectait à peu près tout, son implémentation d'Object Pascal était parfaite, et surtout, il était gratuit dans tous les sens qui comptent pour l'open source.

Cependant, il a une longue histoire de bogues et des implémentations incomplètes de ses contrôles. Et cela a été un peu une rupture pour moi et beaucoup d'autres.

Cela dit, j'ai récemment décidé de le télécharger, par curiosité, et j'ai constaté que c'était en fait un sacré chemin. Les composants de la base de données fonctionnent, même si vous devrez peut-être suivre quelques didacticiels et rechercher des pistes pour les faire fonctionner, et de sérieux progrès ont été accomplis vers iPhone et Android construire des cibles.

Je ne suis pas encore sûr d'être prêt à déployer cela sur l'un de mes clients commerciaux, mais je vais lui donner une autre course avec un projet personnel pour le mettre à l'épreuve, et si cela fonctionne, je pense que je Je vais enfin retrouver mon premier amour de la programmation, Pascal, et dans une affaire qui me permet d'utiliser mon Mac pour faire le gros du travail, tout en fournissant des builds Windows et Linux.

Donc, fondamentalement, voici les faits sur la comparaison; - Lazare et Delphi sont des entités totalement distinctes. Lazarus n'est PAS un compilateur croisé pour Delphi, mais a un certain degré de compatibilité. C'est plus comme GCC vs MS C++. Delphi est plus raffiné et probablement plus stable. Lazarus fournit un environnement similaire à Delphi 4 que les anciens codeurs Delphi trouveront très confortable. mais Lazarus peut parfois être capricieux, et les programmeurs Delphi doivent comprendre que tout dans le dernier et le meilleur Delphis ne sera pas là pour eux. Delphi fait Windows, et il le fait très bien (oui je sais que le nouveau a des cibles de compilation croisée, mais Word dans la rue est que c'est un peu hacky et a besoin de temps dans la cuisinière embacardo avant qu'il ne soit vraiment là), tandis que Lazare se conforme à presque tout. La liste cible actuelle est: - Darwin, NetBSD, OpenBSD, FreeBSD, Linux, Solaris, Win32, Win64, WinCE go32v2 (je pense que c'est MS-DOS avec des extensions 32 bits!), OS2, Netware (!), BEOS, Haiku (? !), QNX, wdosx (?), Emx, netwlibc, Atari, Amiga, Palm-os, Gameboy advance, nds, MacOS, Morphos, Plus, il existe un support expérimental pour IOS et Android. En plus de cela, la chose peut utiliser des ensembles de widgets de QT, GTK, GTK2, Win32/WIn64, Carbon, fpGUI (aucune idée), Cocoa ou aucune interface graphique, avec différents degrés de transparence de mise en œuvre.

C'est une liste exhaustive!

Donc Caveat Emptor. Je recommande fortement aux codeurs Delphi de télécharger cela et de faire des projets personnels pour en avoir une idée, pas sur le budget du patron, mais Lazarus a beaucoup de profondeur et de substance, et c'est potentiellement un outil essentiel dans la ceinture pour faire face à la vie en dehors du berceau Windows.

De plus, puisque les nouveaux maîtres de Delphi n'ont toujours pas appris! @ # $% ^ & * Pourquoi Delphi est tombé en disgrâce (Indice, rendez-le abordable ou gratuit pour les amateurs et les étudiants pour apprendre et créer des composants personnalisés), c'est vraiment le seul option budgétaire disponible. Si Embarcadero se réveille, cela changera peut-être. Jusque-là, viva Lazarus.

55
Shayne

Les deux principales raisons pour moi sont

1) Prise en charge multiplateformes (Linux, Mac OS X, Windows)

2) Le prix 0 $

28
RRUZ

Peut-être que je lis juste mal, mais vous semblez avoir l'impression que les IDE sont en quelque sorte interchangeables. Ce n'est pas correct. Lazarus est construit au-dessus du compilateur FPC et lui est lié de la même manière que Delphi est lié au compilateur DCC. En outre, ils utilisent différents formats de fichier de description de formulaire. Delphi ne peut pas lire les LFM et Lazarus peut essayer de lire les DFM mais il ne fait pas un très bon travail.

FPC/Lazarus est très similaire à Delphi, mais c'est un dialecte différent d'Object Pascal et ce serait une erreur de penser qu'ils sont équivalents.

15
Mason Wheeler

Lazarus est multiplateforme et gratuit à la fois comme dans le discours et la bière, tandis que Delphi n'est ni l'un ni l'autre. Lazarus utilise un compilateur différent qui compile un langage compatible à 99% avec Delphi, et fournit un bibliothèque de composants visuels différents , similaire mais non compatible avec la VCL de Delphi.

13
glebm

J'ai un algorithme de reconnaissance sonore fonctionnant sur Delphi. Lorsque mon supérieur m'a demandé de l'exécuter sur WinCE, j'ai essayé Lazarus. Pascal est Pascal. Lazare est super. Je l'ai fait.

L'algorithme est écrit en Pascal. J'ai essayé de me convertir. C # était enclin à décompiler et utilisait une logique différente. Heureusement, j'ai trouvé Free Pascal.

Je l'ai sur WinCE on ARM. Merci à tous les collaborateurs de FPC.

edit: Je l'ai aussi sous Linux.

12
Celal Ergün

Principale raison pour moi - Delphi ne peut pas actuellement compiler des applications 64 bits et ne peut donc pas voir, lire ou écrire certaines clés de registre.

8
TheSteven

Oui, Linux est installé sur 70% des serveurs. Il alimente Facebook qui compte plus de 400 000 000 d'utilisateurs. Et tu me dis d'utiliser Windows? Vous me dites de ne pas utiliser 64 bits?

J'utiliserai Lazarus. Jusqu'à ce que Delphi se propage.

8
Celal Ergün

Eh bien, je suis de ceux qui utilisent Lazarus IDE pour écrire du code source Delphi.

J'aime beaucoup Delphi. Mais utiliser l'éditeur de Delphi est vraiment pénible. J'ai essayé VIM, et j'ai toujours rêvé d'avoir un IDE comme Visual Studio: simple, propre et peut diviser la fenêtre horizontalement ou verticalement ...

Enfin, j'ai trouvé l'éditeur Lazarus, bien meilleur que Delphi. J'utilise donc Lazarus pour écrire des sources Delphi et RAD IDE est juste pour la compilation et le débogage).

7
Jack Wu

Pour moi :

  • 64 bits est vivant (Delphi ... oui peut-être, non et oui encore, et enfin non ...)
  • Multiplateforme (pas Delphi) Soit dit en passant, beaucoup de travaux doivent encore être effectués, mais cela fonctionne!
  • FPC est un très bon compilateur
  • La communauté est cool et active
5
Stef

Je n'ai pas grand-chose de nouveau à ajouter, mais je pensais que je raconterais mon expérience multiplateforme. En ce qui concerne la création d'un croquis d'application multiplateforme assez rapidement, je trouve que Lazarus fonctionne très bien. J'ai récemment utilisé MonoDevelop dont il y a beaucoup à féliciter, mais le concepteur de l'interface graphique ne semble pas aussi complet que le concepteur graphique Lazarus. Ou est-ce la boîte à outils (GTK #) qui semble manquer de bits? Avant cela, j'ai utilisé Qt/C++ qui semblait également fonctionner assez bien pour le développement multiplateforme, mais je ne suis pas vraiment amateur de C++, et le cadre signal/slot de Qt est un peu curieux, mais fonctionne bien une fois que vous obtenez votre la tête enroulée autour d'elle. En résumé, je trouve que le travail RAD et le codage en utilisant Lazarus sont surtout joyeux, en plus, quel nom sympa pour un IDE!

À votre santé

4
happy coder

Seul CodeTyphon/Lazarus/FreePascal prend en charge 4 hôtes CPU/OS (Win32, Win64, Linux32, Linux64) et 16 cibles CPU/OS (arm-WinCE, arm-Linux, arm-Embedded, arm-gba, arm-nds, i386 -Win32, i386-Linux, i386-FreeBSD, i386-Haiku, x86_64-Win64, x86_64-Linux, x86_64-FreeBSD, powerpc-Linux, powerpc64-Linux, sparc-Linux, sparc-Solaris). D'autres plateformes sont prises en charge dans Lazarus/FreePascal, mais d'autres ne sont pas encore intégrées dans CodeTyphon. Un code pour les gouverner tous ;-). CodeTyphon est un puissant package d'installation en un clic pour Delphi natif multiplateforme comme RAD/IDE basé sur Lazarus/FreePascal qui élimine la configuration douloureuse multiplateforme. Vous pouvez commencer à coder quelques minutes après le téléchargement, donc si multiplateforme, 64 bits ou prix sont des avantages clés pour vous, choisissez Lazarus plutôt que Delphi. Lazarus est hautement compatible avec Delphi, et j'ai converti quelques applications sans trop de problèmes. Il est possible de conserver du code qui se compile sur les deux.

4
avra