Lazarus

Lazarus
Page d'aide sur l'homonymie Pour les articles homonymes, voir Lazarus (homonymie).
Lazarus
Lazarus logo.png
Lazarus IDE 9-26.png
Lazarus 0.9.26
Développeur Volontaire
Dernière version 0.9.30 (28 mars 2011) [+/-]
Environnement Windows, Mac, OS/2, Unix/Linux/BSD, NetWare, MorphOS, DOS
Type EDI pour Free Pascal
Licence GPL, LGPL
Site web www.lazarus.freepascal.org

Lazarus est un EDI multi-plateforme développé en Object Pascal et pour Free Pascal. Son objectif est de fournir aux programmeurs Pascal Objet un environnement de développement s'approchant le plus possible de Delphi.

Free Pascal est un compilateur sous licence GPL fonctionnant sous Linux, Win32, OS/2, Mac OS X, BSD… Il est conçu pour interpréter et compiler la syntaxe Pascal Objet (Delphi). À la différence de Java dont le slogan est « write once run anywhere » (écrire une fois, exécuter partout), celui de Lazarus et Free Pascal est « write once compile anywhere » (écrire une fois, compiler partout). Puisque le même compilateur est disponible sur différentes plates-formes, cela signifie qu'il n'est pas nécessaire de reprogrammer entièrement un logiciel d'un système d'exploitation à l'autre, il suffit simplement de recompiler le code source.

Sommaire

Lazarus et l'accès à l'interface utilisateur

LCL

La LCL est un jeu de composants visuel et non visuel ainsi que de procédures et fonctions. Elle est très largement inspirée de la VCL de Delphi, mais elle n'est pas 100 % compatible avec elle. La LCL est conçue pour être multi-plateforme. Les classes de services de la LCL (TList, TAction par exemple) sont 100 % compatibles avec celles de la VCL.

Widgets

La LCL a été spécialement conçue de manière à pouvoir créer des applications utilisant différents widgetset sans avoir à modifier le code. Par exemple, toute application peut être recompilée pour utiliser QT ou GTK en ne changeant qu'une simple directive de compilation. Ceci fait de la LCL une interface commune à la plupart des widgetset courant. Cependant l'utilisation de fonctions avancées (appel direct aux fonctions du widgetset ou d'options spécifiques) compromet cette possibilité. Les widgetset actuellement supportés sont :

  • GTK 1 : Support complet, utilisé par les anciennes applications Gnome sous Unix, GIMP 1.x sous diverses plates-formes. Il est aujourd'hui considéré comme obsolète.
  • GTK 2 : Support en phase bêta mais déjà très complet, version actuelle de GTK utilisé par Gnome, GIMP 2.x et bien d'autres. Utilisation conseillée pour une bonne intégration sous Gnome, XFCE et autre ou pour des applications multi plate-formes (Windows, Mac, Unix).
  • Qt : Fondé sur la version 4.3 ou supérieure de Qt, le support est encore en bêta mais très complet. Ce widgetset est utilisé par KDE 4 et beaucoup d'autres sous Unix. Utilisation conseillée pour une bonne intégration dans KDE et pour les applications multi plate-formes. Qtopia est également supporté le rendant idéal pour les applications embarquées (sur Palm OS ou Windows Mobile par exemple).
  • Win32/64 : Ne fonctionne que sous Windows avec un support complet, utilisé par l'ensemble des logiciels ne fonctionnant que sous Windows. Supporte les extensions de Windows XP.
  • Cocoa : Ne fonctionne que sous Mac OS X avec support en phase bêta, utilisé par l'ensemble des logiciels ne fonctionnant que sous Mac OS X.
  • WinCE : Ne fonctionne que sous Windows CE avec support en phase bêta, utilisé sur les systèmes embarqués fondés sur Windows CE (PDA, téléphones portables...).
  • FPGui : En phase alpha, à utiliser avec précautions, ce widgetset sera propre à Free Pascal et vise à proposer un système de widget multi plate-formes, ne requérant aucune bibliothèque logicielle et proposant une interface commune au applications Free Pascal.
  • NoGUI : En phase alpha, à utiliser avec précautions, ce widgetset est abstrait et permettra de recompiler des applications où l'interface utilisateur est optionnel de manière à le faire disparaître sans avoir à modifier le code.

Processus de développement

Lazarus est un logiciel de type RAD, similaire à l'EDI Delphi de Borland. Sous Microsoft Windows, Borland Delphi reste le plus stable et a la meilleure documentation, mais il n'a pas les possibilités multi-plateforme de Lazarus. Sous Linux, Lazarus est l'un des meilleurs EDI disponibles. Les applications Lazarus peuvent être compilées sous Delphi et vice-versa moyennant quelques adaptations aux programmes (à comparer à la réécriture complète du code lorsque la bascule se fait d'un langage à un autre). Ce processus est plus facile lorsque le programme ne fait pas appel à des formulaires générés par l'éditeur car il y a certaines incompatibilités. Les composants de Delphi peuvent être installés sous l'EDI, mais ils doivent être convertis, via un processus complexe.

Lazarus est sur la bonne voie pour devenir un puissant EDI RAD. Le projet Lazarus a une communauté importante de développeurs et de testeurs. La communauté résout les problèmes au travers de groupes de discussion, et les programmeurs envoient les correctifs. Les versions sont générées automatiquement pour être testées, ce qui rend le développement de Lazarus très dynamique.

Free Pascal inclut un mode de compatibilité Delphi 6, introduit par la directive {$mode delphi}, qui rend les programmes console et les codes non IHM compatibles avec Delphi. Plus qu'avec un autre langage, il est nécessaire de séparer le fond (code opérationnel) de la forme (interaction avec l'IHM).

Développement multiplate-forme

Free Pascal supporte la compilation sous plusieurs systèmes d'exploitation, et il a été prouvé que des applications peuvent être « crosscompilées », par exemple, de Windows à Linux, et vice versa. Lazarus supporte la crosscompilation sur plate-forme, Windows, Unix (dont Linux ou BSD), Mac OS X, OS/2, NetWare, MorphOS, DOS, BeOS/Haiku, Palm OS pour les systèmes d'exploitation, i386, x86_64, IA-64, PowerPC 32/64, Sparc, Arm, M68k, Alpha, Mips pour ce qui est des processeurs. Attention, le support reste partiel sur certains de ces systèmes.

Limitations

Lazarus ressemble à Delphi sur de nombreux points, il a cependant quelques limitations en comparaison :

  • Les fichiers exécutables générés par Lazarus sont beaucoup plus volumineux que l'équivalent en Delphi, dans un environnement Win32 pur. Il existe cependant la possibilité de compiler un projet avec des tailles d'exécutables très acceptables en supprimant les options nécessaires au débugage (compilation de projets finis)
  • N'est pas 100 % compatible avec la VCL. Mais la LCL fournie est suffisante pour la plupart des applications.
  • Manque des composants et des bibliothèques importantes.
  • Réseau : Indy et Synapse fonctionnent, mais pas à 100 % sur toutes les plates-formes ; lNet continue son développement tout particulièrement sous Free Pascal.
  • Pas de COM.
  • Il vaut mieux installer Lazarus à partir des sources, sous Linux.
  • MAJ: Le TFrame est supporté et fonctionne correctement.

Licence

Puisque Lazarus est sous licence GPL, les logiciels développés avec lui peuvent être diffusés sous n'importe quelle licence. La Lazarus Component Library (LCL) est liée statiquement au programme et sa licence est une version modifiée de la LGPL spécialement conçue pour permettre la création de programmes propriétaires.

Voir aussi

Article connexe

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Lazarus de Wikipédia en français (auteurs)

Игры ⚽ Нужна курсовая?

Regardez d'autres dictionnaires:

  • Lazarus — Lazarus …   Википедия

  • Lazarus — • The name of two persons in the N.T.; a character in one of Christ s parables, and the brother of Martha and Mary of Bethania Catholic Encyclopedia. Kevin Knight. 2006. Lazarus     Lazarus …   Catholic encyclopedia

  • Lazarus — m Name borne in the New Testament by two different characters: the brother of Martha and Mary, who was raised from the dead by Jesus (John 11: 1–44), and the beggar who appears in the parable of Dives and Lazarus narrated by Jesus (Luke 16:… …   First names dictionary

  • LAZARUS — LAZARUS, U.S. family of department store owners. In 1851 SIMON LAZARUS (d. 1877) emigrated from north Germany and opened a store in Columbus, Ohio. He also served the local Congregation B nai Jeshurun as a volunteer rabbi. His sons FRED (d. 1917 …   Encyclopedia of Judaism

  • Lazarus A.D. — Lazarus A.D. Pays d’origine Milwaukee, Wisconsin, États Unis Genre musical Thrash Metal Groove Metal Death Metal Labels Metal Blade Site officiel …   Wikipédia en Français

  • Lazarus [2] — Lazarus, 1) Moritz, philosophischer Schriftsteller und Begründer der Völkerpsychologie, geb. 15. Sept. 1824 in Filehne (Posen), gest. 13. April 1903 in Meran, war zuerst für den Kaufmannsstand bestimmt, wandte sich aber bald der Wissenschaft zu,… …   Meyers Großes Konversations-Lexikon

  • Lazărus — Lazărus, 1) Bruder der Maria u. Martha in Bethanien, Freund Jesu, welcher ihn nach vier Tagen vom Tode erweckte. Nach alter Tradition war L. damals 30 Jahre alt u. lebte noch 30 Jahre, er soll nach Gallien gegangen sein u. in Marseille das… …   Pierer's Universal-Lexikon

  • Lazărus — Lazărus, 1) Freund Jesu, Bruder der Maria und Martha in Bethanien, wurde von Jesus nach Joh. 11 vom Tod erweckt. Sein Tag ist der 17. Dezember. – 2) Ein kranker Bettler in der Parabel Jesu (Luk. 16, 19 f.), Schutzpatron der Kranken. Nach ihm sind …   Meyers Großes Konversations-Lexikon

  • Lazarus [1] — Lazarus, männlicher Eigenname, die verkürzte griechische Form für das hebräische Eleasar (s. d.) …   Meyers Großes Konversations-Lexikon

  • Lazarus — Lazărus (dasselbe Wort wie Eleasar, »Gott hilft«), der von Jesus aus dem Grabe erweckte Bruder der Maria und Martha (Joh. 11, 1 fg; 12, 1 fg). – Nach dem kranken L. des Gleichnisses Luk. 16, 20, dem Schutzpatron der Kranken bei den Katholiken,… …   Kleines Konversations-Lexikon

  • Lazarus [2] — Lazarus, Mor., Philosoph, geb. 15. Sept. 1824 zu Filehne, ursprünglich Kaufmann, seit 1873 Prof. zu Berlin, gest. 13. April 1903 in Meran; mit Steinthal Herausgeber der »Zeitschrift für Völkerpsychologie und Sprachwissenschaft« (1859 90);… …   Kleines Konversations-Lexikon

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”