Ok. Il s'agit d'un vieux fil de discussion, mais il pourrait être mis à jour. J'ai arrêté d'utiliser Delphi, il y a peut-être une dizaine d'années, en grande partie parce que je n'avais pas le choix. Après avoir passé plus de 5 ans à travailler comme 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 l'évolution du monde informatique. Microsoft a été en mesure de fournir un environnement de programmation, que vous pouviez télécharger gratuitement, et son environnement .NET était comparable à la VCL dans tous les domaines importants, alors que même une version de base de Delphi vous ruinerait ou serait tout simplement indisponible pour les budgets étudiants. Le résultat final est qu'en l'absence de nouveaux programmeurs Delphi, il est devenu risqué pour les entreprises de continuer à l'utiliser. Enfin, avec la montée en puissance de Linux, Kylix s'est avéré être un environnement totalement défectueux, n'utilisant pas les chaînes d'outils d'interface utilisateur disponibles et dégageant une odeur suspecte de vin, le tout couronné par une attitude insultante envers les logiciels sous licence GPL qui les traitaient comme des partagiciels. Enfin, lorsque Turbo Delphi est sorti bien des années plus tard, il était incapable d'utiliser les incroyables ressources disponibles via des sites comme celui des composants Tories. Il était clair que Borland n'avait aucun respect pour son écosystème de codeurs.
C'est ainsi que Lazarus a semblé émerger de tout cela, prenant un très long temps de gestation et visant apparemment une sorte d'analogue à Delphi 4, considéré par beaucoup comme l'un des plus propres et des plus soignés de la ligne Delphi. Il était conforme à presque tout, sa mise en œuvre du Pascal objet était parfaite et, surtout, il était gratuit dans tous les sens du terme pour un logiciel libre.
Cependant, il a connu une longue histoire de bogues et d'implémentations incomplètes de ses contrôles. Et cela a été un peu un facteur de 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é qu'il avait fait des progrès considérables. Les composants de la base de données fonctionnent, bien qu'il faille suivre quelques tutoriels et suivre quelques pistes pour les rendre opérationnels, et de sérieux progrès ont été faits vers les cibles de construction iPhone et Android.
Je ne suis pas encore sûr d'être prêt à le déployer auprès de mes clients commerciaux, mais je vais lui donner une autre chance avec un projet personnel pour le mettre à l'épreuve, et si cela fonctionne, je pense que je vais enfin retrouver mon premier amour de la programmation, le Pascal, et dans un domaine qui me permet d'utiliser mon Mac pour faire le gros du travail, tout en fournissant des versions Windows et Linux.
Voici donc les faits concernant la comparaison. Lazarus et Delphi sont des entités totalement séparées. 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 poli et probablement plus stable. Lazarus fournit un environnement comme Delphi 4 que les codeurs Delphi de vieille main trouveront très confortable. Mais Lazarus peut être tempramental parfois, et les programmeurs Delphi doivent comprendre que tout dans le dernier et le meilleur Delphi ne sera pas là pour eux. Delphi fait Windows, et il le fait très bien (oui, je sais que le nouveau a quelques cibles de compilation croisée, mais le mot de la rue est, que c'est un peu hacky et a besoin d'un certain temps dans le cuiseur Embacardo avant qu'il ne soit vraiment là), tandis que Lazarus se conforme à presque tout. La liste actuelle des cibles est : Darwin, NetBSD, OpenBSD, FreeBSD, Linux, Solaris, Win32, Win64, WinCE go32v2 (je pense que c'est MS-DOS avec des extensions 32bit !), OS2, Netware( !), BEOS, Haiku( !). ), BEOS, Haiku( ?!), QNX, wdosx( ?), emx, netwlibc, Atari, Amiga, Palm-os, Gameboy advance, nds, MacOS, Morphos, Plus, il y a 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 pas de gui du tout, avec différents degrés de transparence d'implémentation.
C'est une liste exhaustive !
Donc Caveat Emptor. Je recommande fortement que les codeurs Delphi téléchargent ceci et fassent quelques projets personnels pour avoir une sensation de celui-ci, pas sur l'argent du patron, mais il y a beaucoup de profondeur et de substance à Lazarus, et c'est potentiellement un outil vital dans la ceinture pour traiter la vie en dehors de la crèche de Windows.
De plus, comme les nouveaux maîtres de Delphi n'ont toujours pas appris une seule chose sur les raisons pour lesquelles Delphi est tombé en disgrâce (Conseil, rendez-le abordable ou gratuit pour les amateurs et les étudiants pour apprendre et créer des composants personnalisés). ), c'est vraiment la seule option économique disponible. Si Embacardo se réveille jamais, peut-être que cela changera. Jusque là, viva Lazarus.