MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE (MESRS) =

MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE (MESRS) ========= INSTITUT DE FORMATION ET DE RECHERCHE EN INFORMATIQUE (IFRI) Licence 2 Génie Logiciel Matières : Architecture Client serveur Thème Membres du groupe : Professeur : 1. ACCOMBESSI Bienvenu Mme Miranda GNONLONFOUN 2. AIGBEDE Jean-Pièrre 3. CHOUTI Abdoulaye 4. DELLOUH Jonas 5. N’TCHA Kouagou Joseph 6. TOSSOU JUSTE REPUBLIQUE DU BENIN ========= COM / DCOM Plan I. Introduction II. Généralité 1. Historique de COM et DCOM 2. Définition COM DCOM 3. Objectifs de COM et DCOM 4. Différence entre COM et DCOM III. Architecture de COM et DCOM 1. Architecture du COM 2. Architecture tu DCOM 3. Récapitulatif de l’architecture IV. Les composants 1. Contrôle ActiveX 2. DLL ActiveX 3. EXE ActiveX 4. Document ActiveX 5. La communication entre composant V. Les interfaces 1. IDL 2. Interface Unknown 3. Interface IclanFactory 4. Interface IDispatc 5. Interface IMoniker VI. Avantage et inconvénients 1. Avantage de COM/DCOM 2. Inconvénients de COM/DCOM VII. Codage d’un objet 1. COM 2. DCOM VIII. Conclusion I. Introduction L’informatique actuelle doit être à l’écoute des utilisateurs et se doit de répondre le plus rapidement possible à leurs besoins. En conséquence, les applications monolithiques du passé sont progressivement remplacées par des applications distribuées à bases de composants. Une application à base de composants se compose de briques logicielles réutilisables pouvant interagir entre elles. Ces assemblages de composants logiciels réutilisables et prés à l’emploi permettent de décomposer les applications stratégiques en sous-ensembles de processus coopérant les uns avec les autres : réactivité des architectures informatiques, maîtrise des coûts, évolutivité dans le temps sont alors améliorées. Pour mettre en place des applications à base de composants, une architecture logicielle est nécessaire: elle définit des spécifications fondamentales que doivent respecter les composants de l’architecture et fournit un ensemble de services. Deux grands modèles d’architectures logicielles sont sur le devant de la scène : CORBA de l’OMG et COM/DCOM de Microsoft, entre lesquelles EJB de Sun se présente comme un outsider. Le présent document va décrire sommairement l’architecture logicielle de COM/DCOM. II. Généralité 1. Historique DDE Tout d’abord cela à commencer par le presse-papiers (1987), qui permettait aux utilisateurs de copier des portions de données d’une application à l’autre. Cela fonctionnait bien pour des documents simples, mais lorsque ceux-ci étaient plus complexes, le presse-papiers atteignait ses limites. Plus tard, Microsoft développa la technologie DDE, Dynamic Data Exchange ou Echange dynamique de donnée, une « nouvelle génération » de presse-papiers, qui permet d’insérer des données à partir d'un document d’une autre application. Ces données restaient liées à l'application d'origine. Cette technologie ne fonctionnait pour les applications de Microsoft. A la différence de OLE, où on pourra lancer l'application d'origine en cliquant dans l'objet : feuille Excel dans l’application Word. OLE1 OLE « Object Linking and Embedding », signifie « Intégration d'objets et Lien sur des objets » développé en 1991, le but était de permettre l’insertion des données provenant de plusieurs applications sur un seul document. Et cela soit par intégration complète, soit par référence (ce que l'on appelle une liaison). On peut voir cela dans la plupart des applications où apparaît dans le menu « Coller | Collage spécial ». Les objets intégrés ou liés sont capables de s'afficher dans l'application qui les contient. OLE2 OLE1 était fondé sur des messages Windows mais, cela causait de grosses difficultés d’intégration dans la mesure où toutes les applications n’utilisaient pas les mêmes technologies. C’est donc pendant le développement d’OLE 2 que Microsoft inclus la technologie COM dans son modèle de composant. COM COM « Component Object Model » ou Modèle d'objet composant est né avec OLE2. C'est une spécification de Microsoft qui décrit comment créer les objets réutilisables. Il a aussi pour but de définir un standard de communication (en fait des méthodes) afin d’accéder aux objets OLE localement. Nous détaillerons cette partie plus loin. DCOM Microsoft a ensuite fait évolué la technologie COM afin de permettre la répartition des composants sur un réseau. L'aspect distribué a donné le préfixe D pour Distributed COM, qui spécifie toujours les composants, mais cette fois distants et interopérables avec aux systèmes d'exploitation hétérogènes. 2.Définition COM COM « Component Object Model » ou Modèle d'objet composant est une spécification de Microsoft qui décrit comment créer les objets réutilisables. Pour bien comprendre la notion de COM, il est intéressant de se pencher sur les interfaces. En d’autres termes, COM décrit un format binaire que doivent respecter les composants. D’autre part, le modèle COM offre un certain nombre de services qui facilitent la création d'objets et les communications entre les objets. Component Object Model (COM) est une norme d’interface binaire pour les composants logiciels introduite par Microsoft en 1993. Il est utilisé pour permettre la création d’objets de communication interprocessus dans une large gamme de langages de programmation. DCOM Le modèle DCOM permet la communication entre des objets s'exécutant sur la même machine. Le modèle de composants distribués DCOM, étend COM afin de supporter les communications avec des objets situés sur des machines distantes, et sur des plateformes différentes. Initialement développé pour Windows, DCOM est maintenant disponible sur des plates-formes UNIX, dont Solaris, Linux et HP/UX. DCOM = COM + RPC (Remote Protocol Call) DCOM supporte les objets distants grâce au protocole ORPC (Object Remote Procedure Call), qui lui, est basé sur RPC (Remote Protocol Call, de DCE : Distributed Computing Environment). Le fonctionnement est détaillé dans la partie architecture globale. 3.Objectifs Les objectifs de COM : Voici les principaux objectifs de COM: • Définir un protocole pour créer des composants. • Réutilisation des composants • Microsoft affirme que l’on peut accéder et développer les composants indépendamment du langage de programmation pourvu que le langage permette d’accéder aux pointeurs de fonctions. Il est possible d'utiliser par exemple : C, C++, Visual Basic Etc Les Objectifs de DCOM : Voici les principaux objectifs de DCOM: • Les composants DCOM peuvent fonctionner dans des processus différents et sur des machines différentes. • Possibilité de faire évoluer à tout moment les fonctionnalités d’une application (client, serveur ou composant COM). Cela se fait par QueryInterface que tous les composants COM supportent et qui permet de proposer de nouvelles fonctions à de nouveaux clients sans altérer la compatibilité avec les anciens. Les évolutions se font par de nouvelles Interfaces et un composant COM supporte toujours les vieilles Interfaces. • Interactions simples et rapides. Les appels in-process se font par pointeurs. • Réutilisation d’Interfaces. • Transparence Local/Distant. Le standard binaire autorise le détournement des appels aux Interfaces pour les rediriger vers un objet distant de façon transparente pour l’appelant. • Microsoft affirme que les composants DCOM sont indépendants du langage de programmation utilisé. A condition, que le langage ait accès aux pointeurs. 4. Différence entre COM et DCOM : Base de COM DCOM Abréviation Modèle d'objet composant. Modèle d'objet de composant distribué. Exécution sur Environnement côté client. Environnement serveur. Installation Requis sur la machine où il est utilisé. Requis sur le même réseau. Type de modèle COM est une norme d'interface. DCOM un modèle conçu pour les applications distribuées. Réutilisabilité des objets Il permet. Cela ne permet pas. Autoriser Non, une telle Oui, il est capable d'objets Base de COM DCOM distribué capacité d'objets distribués. distribués. Utilisation de la mémoire Il ne fournit pas une meilleure utilisation. Il dispose d'un collecteur d'objets distribué qui améliore l'utilisation de la mémoire. III. Architecture des COM et DCOM En COM/DCOM on distingue essentiellement trois types de composants (On aura à développer plus les composants dans chapitre suivant) : 1. Serveur « In-Process » : il s’exécute dans le processus de l’appelant. Tous les composants de ce type sont des DLL (ou des contrôles ActiveX). 2. Serveur « Local » (ou « Out-of-process) : il s’exécute dans un processus séparé et sur la machine de l’appelant. Un composant de ce type peut être un service ou un exécutable. L'appel atteint d'abord l’objet proxy (voir récapitulatif des architectures) fourni par le modèle COM, qui génère l'appel de procédure à distance vers l'autre processus ou l'autre machine. Serveur « Remote » : s’exécute dans un processus séparé, sur une machine distance. Un composant de ce type peut être un service ou un exécutable. Même Processus Æ Appel de fonction Même Machine Æ LPC Local Procedure Call Machines Distantes Æ Protocole DCOM reposant sur DCE-RPC Récapitulatif de l’architecture IV. Les composants 1. Contrôle ActiveX Les contrôles ActiveX (d’extension .ocx pour OLE Control Extension) sont des éléments logiciels indépendants et réutilisables qui incluent des éléments visuels et du code. La boîte à outils de Visual Basic renferme l'ensemble des contrôles intégrés; elle facilite et accélère ainsi considérablement le développement des applications. Les contrôles doivent être placés dans un type de conteneur quelconque, comme une feuille ou une application. Ils communiquent entre eux via un ensemble de normes et d’interfaces communs. Exemple : Tout contrôle créer dans Visual Basic est reconnu comme une classe de contrôle, laquelle lui sert de modèle. Lorsqu’on place un contrôle sur une feuille, une instance de ce contrôle est créée uploads/Ingenierie_Lourd/ com-dcom.pdf

  • 25
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager