Retour aux sources



Mes pérégrinations ou plus exactement mon activité de veille, m'amènent à regarder régulièrement les nouveautés du côté des environnements, langages et outils de développement logiciel. Ayant eu un parcours professionnel dans ce domaine et continuant à en faire, j'ai donc gardé en coin de mire les outils que j'ai utilisés par le passé ou aujourd'hui et pour certains appréciés. C'est ainsi, qu'ayant travaillé pendant plusieurs années sur Borland Delphi, de la version 1 à 7, je peux affirmer que je connais bien le sujet. Surtout après avoir développé des applications en Basic ou dBaseIII+, Gupta SQL Windows ou Borland C++ Builder. J'ai également fait du développement sur Visual Studio ou plus récemment MonoDevelop, par exemple.

Au fil du temps Borland a fait passé Delphi d'un outil de développement pour aficionados, si on peut le dire ainsi, à un environnement professionnel de très grande qualité. Toutefois, les choix économiques de l'éditeur, l'ont poussé à s'en séparer au profit d'Embarcadero. Depuis, ce dernier a fait évoluer la plate-forme, tout comme celle de C++ Builder, pour la rendre plus ouverte avec le support d'autres systèmes par exemple.

Malheureusement, Delphi et C++ Builder ne fonctionnent que sur plate-forme Microsoft Windows, donc quid du développement sur Apple OSX ou Linux. De plus ce sont des produits commerciaux coûteux, donc difficile d'accès pour le développeur indépendant, l'étudiant, … dans leurs versions la plus complète.

Il faut bien comprendre que Delphi et C++ Builder, s'appuient sur un framework de très grande qualité. Extrêmement fiable, évolutif et aisément extensible, d'où une profusion de composants et autres extensions, utilisables en licence commerciale, freeware ou Open Source.

Ce qui fait que de nombreuses applications et non des moindres ont été et sont développées sur ces environnements et tout particulièrement Delphi. Mais leur qualité intrinsèque est de s'appuyer sur le langage Pascal Objet et d'être les dignes héritiez du Turbo Pascal. C++ Builder ayant la spécificité d'être un outil hybride, puisqu'il support à la fois le C++ et le Pascal Objet, ainsi que la bibliothèque de composants de Delphi, la VCL (Visual Component Library).

Il y a quelque temps j'ai découvert le projet FPC (Free Pascal Compiler) qui se veut être une version Open Source du compilateur Pascal Objet éponyme.



Et puis plus récemment est apparue Lazarus, environnement de développement « Delphi like » exploitant FPC et qui propose une librairie de composant équivalente à la VCL (Visual Component Library) de Delphi, la LCL (Lazarus Component Library).



Enfin, CodeTyphon que l'on pourrait considérer comme un « fork » de Lazarus mais, qui est plus exactement un générateur d'environnement complet, prêt à l'emploi comprenant à la fois celui-ci, FPC et les tous les composants de base nécessaires.

On peu pensé que les créateurs de CodeTyphon, on voulut disposer d'un environnement prêt à l'emploi, car il est complexe voir extrêmement difficile d'en disposer. Et il est vrai que les développeurs aiment généralement cela, car installer de façon indépendant l'ensemble des outils nécessaires (compilateurs, debugeurs, EDI, bibliothèques de composants, ...) peut vite devenir très fastidieux.
L'autre avantage de Lazarus et donc de CodeTyphon, c'est sa portabilité, tout comme FPC d'ailleurs. Ce qui leurs permet d'être disponible sur Microsoft Windows mais, aussi sur OSX et surtout Linux. Autres petit plus qui est loin d'être anodin, c'est la capacité de CodeTyphon d'embarquer les outils et de pouvoir générer en compilation croisée, sur des cibles autres que la plate-forme ou il est installé.Certes c'est un environnement jeune et donc perfectible mais, il profite toutefois de l'antériorité de Delphi, qui aura 20 ans cette année.

Au-delà de ça, c'est l'apprentissage du Pascal Objet, aisé parmi les langages de programmation orientés objets et des technologies POO, en font un outil de choix.

Des langages comme le Pascal Objet on la vie dure et continue d'être appréciés, car il faut bien maintenir ce qui existe. Et comme je l'écris plus haut, la richesse des composants disponibles, sources et autres exemples en font un langage de choix. Combiné avec des EDI (Environnement de Développement) de haut niveau qui permettent au développeur de se concentrer sur son code et donc d'améliorer substantiellement la qualité et la productivité.

Certes Delphi, C++ Builder, Lazarus ou bien encore CodeTyphon ne sont pas les seuls environnements à être disponibles, il y en a beaucoup d'autres. Ceux-ci supportent des langages promis à un bel avenir, car il faut a minima maintenir les applications développées.

On peu cependant pensé que l'écosystème Delphi à encore un bel avenir devant lui !

Article publié le mercredi 22 juillet 2015 par Frédéric.