Présentation des technologies Mozilla

En savoir plus

 

 

 

 

Citons par exemple le composant nsFile qui permet de lire, écrire, modifier des fichiers sur le disque dur.

 

 

 

 

 

 

 

 

Il s'agit de la couche la plus complexe et la plus puissante du framework. XPCOM3 (Cross Platform Component Object Model) intègre une gestion de bibliothèque de composants : chacun peut rajouter son propre composant ayant ses propres fonctionnalités, afin d'être utilisé au final dans l'application.

Mozilla met à disposition des utilisateurs du framework tous les composants qu'ils utilisent pour leurs applications : il en existe au total plus de 2 000.

Il n'y a donc plus qu'à écrire le code qui permet de choisir et d'utiliser ces "briques" logicielles déjà toutes prêtes : génial ! Pour les aficionados de Windows, Microsoft s'est lancé dans cette technologie depuis des années avec le COM, anciennement appelé OLE (Object Linking and Embedding).

 

Les possibilités de XPCOM sont :
» Ecrire du code multiplate-forme : un même composant peut fonctionner sous Windows, Mac et Linux. La portabilité du code est l'objectif principal de XPCOM.
» Ecrire du code réutilisable : on retrouve des fonctionnalités similaires entre différentes applications (lecture des périphériques, ouverture de fichiers, connexions réseau…), alors pourquoi ne pas les écrire une seule fois, puis ensuite les partager ? On y gagne à tous les coups : mises à jours partagées, gain de temps, séparations des composantes du logiciel…
» La séparation des fonctionnalités en composants de petite taille : on sait exactement ce que chaque composant est capable de faire et on peut donc, sans écrire une ligne de code, concevoir son application. Idéal pour les architectes !
» Utiliser des composants scriptables : un composant écrit dans un langage est disponible dans tous les autres et ce depuis tous les langages pouvant utiliser XPCOM (Javascript, C, C++, Python, Java) !

 

On peut imaginer un composant écrit en C++ implémentant un protocole réseau (tout simplement car la librairie n'est disponible que dans ce langage), et l'utiliser dans un autre programme écrit en Python


JDN Développeur Envoyer Imprimer Haut de page