CLX (Delphi)

CLX (Delphi)

CLX est l'acronyme de Component Library X(cross)-Platform, pour "Bibliothèque de composants multi-plateformes". Il s'agit d'un framework écrit en Pascal Objet par Borland lorsque l'éditeur décida de porter Delphi sous Linux en créant Kylix. Bien que la CLX ne soit pas exactement la VCL sous Linux, elle est conçue pour supporter la plupart de ses fonctionnalités et Borland a fourni un effort important pour que les deux bibliothèques aient deux interfaces très similaires.

Le but final de la CLX est de produire facilement avec un même code des applications pour Windows ou Linux.

Conception et implémentation

Comme la VCL, la CLX se compose de plusieurs modules : NetCLX (composants internet), VisualCLX (composants visuels) et BaseCLX (librarie d'exécution standard). Là où la VCL s'appuie sur les API Win32 ou Microsoft .NET, la CLX s'interface principalement dans sa version Linux sur la Bibliothèque standard du C ainsi que le Gestionnaire de fenêtres X via la bibliothèque de composants Qt de Trolltech.

Utilisant DisplayCLX, les objets graphiques de la CLX s'interfacent avec Qt. Cette communication passe d'abord par un fichier d'interface, Qt.pas, qui décrit des fonctions standard "mises à plat" (c'est-à-dire des procédures, et non des méthodes de classe) pour créer et gérer des widgets Qt. Les fonctions sont implémentées par une bibliothèque écrite en C++ fournie par Borland, libqtintf.so, qui charge dynamiquement la bibliothèque Qt, libqt.so. Ce chaînage complexe sans doute censé au départ permettre la mise à jour facile des liaisons au fur et à mesure de l'évolution de la bibliothèque de Trolltech nécessite le déploiement des deux fichiers sur un poste désirant exécuter l'application graphique. Le même système est présent

La CLX gère également sous Kylix les objets et les concepts Linux comme les IPC ou les signaux.

Sous Windows, la gestion des objets graphiques reste toujours délégué à Qt (on déploie cette fois ci la version Windows de la bibliothèque), et a contrario de la VCL il n'y a plus d'appel à des API Windows pour l'instanciation de composants visuels ou le tracé de dessins à l'écran.

Status de la CLX

Beaucoup de développeurs Delphi espéraient simplement avoir à recompiler leur application Windows avec Kylix pour en faire de vraies applications Linux. Évidemment, il n'en était rien, et créer un projet multiplate-forme passait obligatoirement par l'abandon de la VCL au profit de la CLX (sans parler évidemment de la suppression de tout code invoquant directement un API Windows). Cette nécessité de réécriture fut un premier frein au développement de cette bibliothèque.

De plus, la CLX a souffert du manque d'expérience des développeurs de Borland vis-à-vis de Linux. Par exemple, certaines déclarations d'objets de synchronisation ou de communication interprocessus étaient fausses et il a fallu plusieurs versions successives avant que les bugs soient (partiellement) corrigées. Aujourd'hui encore, de nombreuses améliorations sont en proposition et incluses sous la forme de patchs non officiels par des développeurs indépendants.

La CLX obligeait également la distribution de plusieurs bibliothèques propres à Borland, notamment pour l'interfaçage avec Qt. Le déploiement d'applications graphiques sous Linux n'était pas trivial et souvent problématique. L'aspect non "natif" d'une application Qt sous Windows fut aussi un frein au développement de cette bibliothèque.

Avec l'abandon de Kylix par Borland, la CLX n'est plus une solution d'actualité. Il aurait fallu un effort constant d'adaptation au fur et à mesure des nouvelles versions de la libc et de Qt, ainsi qu'un réel investissement dans la correction de bugs résidents en particulier dans la VisualCLX : par conséquent seul subsiste la VCL comme framework de développement sous Delphi et C++ Builder.

FreeCLX

Le toolkit Qt étant utilisable avec, au choix, une licence propriétaire, payante, ou une licence libre copyleftée gratuite, il en est de même pour la CLX. En effet, Kylix était proposé en versions payantes (Professionnelle, Entreprise) pour le développement d'applications propriétaires et une version gratuite (plutôt limitée) dite Open Edition permettant uniquement le développement d'applications libres en raison du copyleft de la licence. La version "Open Edition" comprenait le sous-ensemble FreeCLX, qui devait constituer la bibliothèque Open Source, dont l'évolution aurait dû être assurée par la "communauté". Le site SourceForge.net héberge ce projet, mais celui-ci est inactif depuis fin 2001.


Wikimedia Foundation. 2010.

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

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • CLX — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom.   Sigles d’une seule lettre   Sigles de deux lettres > Sigles de trois lettres   Sigles de quatre lettres …   Wikipédia en Français

  • Delphi (среда разработки) — У этого термина существуют и другие значения, см. Delphi. Embarcadero Delphi …   Википедия

  • Delphi-Language — Delphi ist zum einen der Name einer vom Unternehmen Borland entwickelten objektorientierten Programmiersprache, die ursprünglich aus der von Niklaus Wirth erstellten Programmiersprache Pascal hervorgegangen ist, und zum anderen die Bezeichnung… …   Deutsch Wikipedia

  • Delphi Programmiersprache — Delphi ist zum einen der Name einer vom Unternehmen Borland entwickelten objektorientierten Programmiersprache, die ursprünglich aus der von Niklaus Wirth erstellten Programmiersprache Pascal hervorgegangen ist, und zum anderen die Bezeichnung… …   Deutsch Wikipedia

  • CLX — (Component Library for Cross Platform)  это кроссплатформенная библиотека для разработки программ в операционных системах Microsoft Windows и Linux. Она разработана в марте 2001 года компанией Borland для использования в первом релизе среды… …   Википедия

  • Delphi — Saltar a navegación, búsqueda Para otros usos de este término, véase Delphi (desambiguación). Delphi es un entorno de desarrollo de software diseñado para la programación de propósito general con énfasis en la programación visual. En Delphi se… …   Wikipedia Español

  • Delphi (Informatique) — CodeGear Delphi Pour les articles homonymes, voir Delphi. Delphi désigne à la fois un environnement de développement intégré et un langage de programmation orienté objet. L EDI Delphi est un EDI propriétaire fonctionnant sous Windows créé en 1995 …   Wikipédia en Français

  • Delphi (informatique) — CodeGear Delphi Pour les articles homonymes, voir Delphi. Delphi désigne à la fois un environnement de développement intégré et un langage de programmation orienté objet. L EDI Delphi est un EDI propriétaire fonctionnant sous Windows créé en 1995 …   Wikipédia en Français

  • Delphi (langage) — CodeGear Delphi Pour les articles homonymes, voir Delphi. Delphi désigne à la fois un environnement de développement intégré et un langage de programmation orienté objet. L EDI Delphi est un EDI propriétaire fonctionnant sous Windows créé en 1995 …   Wikipédia en Français

  • CLX — Die Component Library for Cross Platform Development (kurz CLX) ist, wie die VCL auch, eine Komponentenbibliothek. Die CLX gibt es für die Entwicklungsumgebungen Delphi (für Windows) und Kylix (für Linux) von Borland. Mit diesen Cross Platform… …   Deutsch Wikipedia

Share the article and excerpts

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