Travail réalisé par : LATRECHE Imed Eddine MENASRIA Med Lamine L’objet distribué DCOM Travail réalisé par : LATRECHE Imed Eddine MENASRIA Med Lamine
PLAN Introduction Modèle COM DCOM Les contrôles ActiveX Conclusion
1. Introduction Ces dernières années ont vu un certain nombre de changements survenir dans la voie dont l’orienté objet comme les composants distribués opèrent. Pour celà, Microsoft a développé le modèle Distributed Component Object Model (DCOM). 1
2. Modèle COM 2 Définition: Component Object Model (COM) est une spécification crée par Microsoft, qui décrit comment un programme exécutable peut être emballé dans un objet par un programmeur, permettant ainsi l'utilisation de cet objet par d'autres programmeurs. La spécification COM décrit une interface de programmation ainsi qu'un procédé de communication entre les objets qui sont indépendant du langage de programmation et du système d’exploitation. 2
2. Modèle COM 3 Les caractéristiques des objets COM : Un objet COM est essentiellement un programme qui met en œuvre une ou plusieurs interfaces de programmation (API). Les objets COM peuvent être mis en œuvre par des fichiers .EXE ou .DLL de Microsoft Windows. Un composant COM est exécuté dès qu'un programme s'en sert, et s'arrête automatiquement lorsqu'il ne l'est plus. Plusieurs programmes peuvent se servir simultanément d'un composant COM 3
2. Modèle COM 4 Les caractéristiques des objets COM : Toutes les interfaces de l’objet COM sont dérivées de l'interface nommée IUnknown. L'interface IUnknown comporte trois fonctions: QueryInterface(), AddRef() et Release(). 4
3. DCOM Définition: Distributed Component Object Model (DCOM) est une technique propriétaire de Microsoft qui permet la communication entre des composants logiciels distribués au sein d'un réseau informatique. DCOM, appelé à l'origine « Network OLE », constitue une évolution du modèle standard COM. Il a été rendu obsolète par Microsoft .NET. L'addition du « D » à COM est due à l'utilisation intensive de DCE/RPC, plus précisément sa version Microsoft, connue sous le nom de MSRPC. 5
3. DCOM 6 Serveur PROXY Skeleton Client Canal RPC Composant PROXY Skeleton Canal RPC Interface proxy Interface Skeleton 6 Figure: DCOM, réalisation répartie de COM
Processus différent, même machine 3. DCOM Relation client – serveur dans DCOM : Même processus DLL chargée dans l’espace d’adressage du client. Appel direct. Processus différent, même machine EXE sur la même machine. Appel via schéma LPC (“Local Procedure Call”). Processus Distant EXE sur machine distante Appel via schéma RPC (“Remote Procedure Call”) 7
Ramasse-miettes distribué 3. DCOM Problèmes résolues par DCOM : Marshalling Sérialisation et desérialisation des paramètres et des valeurs de retour des appels de méthode à travers le réseau. Ramasse-miettes distribué S'assurant que les références des clients des interfaces soient libérées quand le processus client plantait, ou la connexion réseau était perdue. 8
3. DCOM 9 Avantages : Réutilisation DCOM utilise directement et de façon transparente les composants COM et ses outils. Il existe plusieurs composants prêts à l'emploi qui permettent de réduire le temps de développement en intégrant des solutions standardisées dans une application. 9
Indépendance de location 3. DCOM Avantages : Indépendance de location DCOM masque complètement l'emplacement d'un composant, que ce soit dans le même processus que le client ou sur une machine quelque part dans le monde. DCOM ne nécessite aucune modification au code source, il n'exige même pas que le programme soit recompilé. Une simple reconfiguration modifie la façon dont les composants se connectent les uns aux autres. 10
3. DCOM 11 Avantages : Neutralité du langage DCOM est complètement indépendant du langage. Pratiquement n'importe quel langage peut être utilisé pour créer des composants COM et ces composants peuvent être utilisés par beaucoup d'outils et de langages. L’indépendance du langage permet le prototypage rapide : les composants peuvent être formulés dans un langage de haut niveau, tels que Visual Basic et par la suite remis sur pied dans un autre langage de bas niveau, tels que C ou Java, qui peuvent mieux profiter des fonctionnalités avancées de DCOM. 11
Gestion de la connexion 3. DCOM Avantages : Gestion de la connexion DCOM gère les connexions aux composants qui sont dédiés à un seul client, mais aussi des composants partagés entre plusieurs clients, en maintenant un décompte de références sur chaque composant. Lorsqu'un client établit une connexion à un composant, DCOM incrémente le décompte de références du composant. Lorsque le client libère sa connexion, DCOM décrémente le décompte de références du composant. Si le compteur atteint zéro, le composant peut se libérer. 12
3. DCOM 13 Avantages : Extensibilité DCOM fournit un certain nombre de fonctionnalités qui améliorent l'évolutivité des applications pour, en plus d’être petite et rapide lorsque les exigences sont minimales, elle soit aussi en mesure de traiter les demandes supplémentaires sans pour autant sacrifier les performances ou la fiabilité. 13
4. Les contrôles ActiveX 14 Définition : ActiveX désigne l'une des technologies de COM et DCOM utilisées en programmation pour permettre le dialogue entre applications. Un contrôle ActiveX est un fichier portant l'extension « .OCX ». Ce sont des programmes encapsulés dynamiques (à l'instar des DLL) se comportant comme des classes qu’on peut instancier comme des objets. Ce sont des composants logiciels intégrables dans d'autres programmes tels que des bibliothèques externes. 14
4. Les contrôles ActiveX 15 Caractéristiques : Pour rendre les ActiveX accessibles, on peut les déclarer officiellement au système ou simplement les livrer avec un logiciel. Mais pour pouvoir les utiliser dans un logiciel, on doit obligatoirement les déclarer à ce dernier lors de sa création. Lors de la compilation du logiciel, ces composants ne seront pas intégrés au programme mais liés, et donc, resteront extérieur au programme l'utilisant. Par conséquent, ces composants peuvent rester disponibles pour d'autres programmes. Ils sont donc hautement réutilisables et utilisables simultanément par plusieurs programmes 15
4. Les contrôles ActiveX 16 Caractéristiques : Contrairement aux DLL, les contrôles ActiveX sont de véritables petits logiciels indépendants qui peuvent avoir une interface graphique, non seulement lors du fonctionnement du logiciel les utilisant, mais également lors de la création, afin d'aider le développeur à les utiliser ou les configurer. Tout comme les classes, ils sont principalement constitués de propriétés, de méthodes et d’événements. On peut donc les créer comme de simples objets. Mais outre une interface graphique, ils ont en plus la possibilité de contenir des données annexes tel que des images, des icônes…etc 16
4. Les contrôles ActiveX 17 Utilisation et exemple : L’insertion de contrôles ActiveX dans une page HTML se fait en utilisant un tag dédié <OBJECT>. Voici certains de ces attributs : ALIGN CODEBASE CLASSID STANDBY DATA HEIGHT / WIDTH ID Exemple : <OBJECT CODEBASE="http://www.abcd.com/control.ocx#Version=4,70,0,1997" CLASSID="CLSID:1A4DA620-6217-11CF-BE62-0080C72EDD2D" ID=ctrl> 17
5. Conclusion DCOM est un outil puissant et robuste qui a résolu d’énormes problèmes de distribution des composants logiciels, mais, malgré ça, il reste un outil difficile à appréhender et à mettre en œuvre. 18
Merci pour votre attention