CORBA (Common Object Request Broker Architecture)
CORBA (Common Object Request Broker Architecture) est une spécification ouverte indépendante du fournisseur pour l'informatique en réseau. Elle est publiée par le groupe OMG (Object Management Group).
La plupart des applications ont besoin d'objets différents selon les plateformes et les systèmes d'exploitation pour pouvoir communiquer mutuellement sur les réseaux. CORBA permet aux objets d'interopérer de cette façon, avec le protocole IIOP (Internet Inter-ORB Protocol). Pour aider les objets à comprendre les opérations disponibles et la syntaxe nécessaire pour les appeler, un IDL (Interface Definition Language) est utilisé. L'IDL est indépendant du langage de programmation, afin d'augmenter l'interopérabilité entre les objets.
Lorsqu'un développeur d'applications définit un objet, il définit aussi d'autres aspects. Les aspects comprennent la position de l'objet dans une structure hiérarchique globale, des attributs d'objet et des opérations possibles. Ensuite, les aspects sont tous décrits dans l'IDL. La description est ensuite convertie en une implémentation à l'aide d'un compilateur IDL. Par exemple, IDLJ est un compilateur IDL pour le langage Java™ et convertit une description IDL en code source Java. L'avantage est que l'implémentation d'objet est encapsulée par la définition IDL. Tout autre objet souhaitant interopérer peut le faire à l'aide de mécanismes définis avec l'IDL partagé.
Les développeurs mettent en oeuvre cette interopérabilité en définissant la hiérarchie, les attributs et les opérations des objets utilisant IDL, Ils utilisent ensuite un compilateur IDL (tel que IDLJ pour Java) pour mapper la définition sur une implémentation dans un langage de programmation. L'implémentation d'un objet est encapsulée. Les clients de l'objet peuvent voir uniquement son interface IDL interne. L'OMG a produit des spécifications pour les mappages d'IDL à de nombreux langages de programmation communs, y compris C, C + + et Java
ORB (Object Request Broker) est au coeur de la spécification CORBA. Le courtier ORB route les demandes du client vers un objet distant et les réponses vers leurs destinations. Java contient une implémentation de l'ORB qui communique à l'aide de IIOP.