FAQ Corba
FAQ CorbaConsultez toutes les FAQ
Nombre d'auteurs : 1, nombre de questions : 8, dernière mise à jour : 15 juin 2021
- Qu'est ce que CORBA ?
- Quels sont les principaux avantages de CORBA ?
- Où trouver des infos sur CORBA ?
- Quel langage utiliser pour développer en CORBA ?
- Faut-il impérativement choisir entre CORBA et DCOM ?
- Comment une application Web peut-elle accéder à une objet CORBA ?
- Qu'est ce que l'interopérabilité dans CORBA ?
- Comment définir un objet CORBA ?
CORBA est un standard d'objets distribués. CORBA permet à une application de demander à un objet distribué d'effectuer une opération et d'en obtenir le résultat. L'application communique avec l'objet qui effectue l'opération. C'est une fonctionnalité clients/serveur basique où un client envoie une requête à un serveur et le serveur répond au client. Les données peuvent passer du client au serveur et sont associées à une opération particulière sur un objet particulier. Les données sont ensuite retournées au client sous la forme d'une réponse.
- CORBA supporte plusieurs langages. CORBA supporte aussi un mélange de ces langages dans une même application distribuée.
- CORBA supporte à la fois la distribution et l'orientation objets.
- CORBA est un standard industriel. Celà crée une concurrence entre les différents vendeurs et assure ainsi que des implémentations de qualité existent. Le standard CORBA permet aussi au développeur de pouvoir compter sur un degré élevé de compatibilité entre les différentes implémentations (sans jamais être totalement portable).
- CORBA permet un dégré élevé d'interopérabilité. Celà permet d'assurer que des objets distribués construits sur différents produits CORBA pourront communiquer.
- Plus de 600 compagnies soutiennent CORBA.
Les sites qui font référence pour CORBA sont bien sur les sites de l'OMG : et à partir de là tu trouveras à peu près tout ce qu'il te faut, y compris des pointeurs vers d'autres sites. La documentation de Visibroker est aussi très bien faite et assez générique. On peux y accéder librement sur Il n'y a que très peu d'informations sur CORBA en Français, et c'est d'ailleurs une des raisons de l'existence d'une section et d'un forum CORBA sur developpez.com. Tu pourras par exemple consulter les liens suivants :
- Section CORBA : http://www.developpez.com/corba
- Forum CORBA : http://www.developpez.com/forums/list.php?f=5
- CORBA, une introduction par l'exemple : http://www.developpez.com/corba/introcorba.htm
- Introduction à Corba : http://www.developpez.com/corba/introduction.htm
- Visibroker : http://www.inprise.com/visibroker/
- Documentation C++ et Java : http://www.inprise.com/techpubs/visibroker/
- FAQ : http://www.inprise.com/devsupport/visibroker/faq/
- White papers : http://www.inprise.com/visibroker/papers/
- http://www.omg.org
- http://www.corba.org
Lien : OMG.org
Lien : CORBA.org
Lien : Visibroker
Lien : Rubrique CORBA
Lien : Forum CORBA
Lien : CORBA, une introduction par l'exemple
Lien : Introduction à Corba
Une des nombreux avantages de CORBA est qu'il supporte plusieurs langages et vous n'êtes pas forcé d'utiliser un langage en particulier. L'OMG a standardisé le mapping IDL pour les langages suivants: mais des mapping "vendeurs" sont disponibles pour : Dans la pratique, les langages les plus utilisés pour CORBA sont Java et C++. C++ est très puissant et particulièrement adapté au côté serveur, tandis que Java conviendra le plus souvent au côté client. Cependant, ceci n'est bien sur pas une règle et chaque cas devra être étudié avec soin.
- Tcl
- PL/1
- LISP
- Python
- Perl
- C
- C++
- Smalltalk
- Java
- Ada
- Cobol
- un pont vers les langages basés sur COM (type Visual Basic)
Une application peut très bien utiliser CORBA et DCOM. Si DCOM est très bien adapté à Windows et permet de travailler sur des objets de type OLE automation, il faudra utiliser CORBA pour travailler sur des objets issus du monde Unix. C'est pour cette raison que l'OMG a défini des spécification pour les ponts CORBA/DCOM.
Il y a bien sur plusieurs façons d'accéder à un objet CORBA via une application Web. Un plug-in pour browser peut être développé pour accéder à un objet CORBA via le protocole IIOP. Certains browser supportent directement le protocole IIOP et peuvent donc accéder à n'importe quel objet diffusé via IIOP. A titre d'information, je mentionne ici le projet Circare qui, je trouve, fait une utilisation astucieuse de CORBA Script (langage de script permettant de faire du CORBA "simplement") via Web Corba Script. Web CORBA Script s'utilise à la manière de PHP (le code est interprété sur le serveur). A noter que ces travaux sont en OpenSource. On peux trouver toutes les infos sur ce projet très intéressant à l'adresse suivante : http://www.minoru-development.com/corbascript/reference.html#wcs et des précision sur Web CorbaScript sur : http://sourceforge.net/projects/wcs/ http://corbaweb.lifl.fr/CorbaScript/
- Les applets Java peuvent accéder à des objets CORBA directement via le protocole IIOP. L'ORB Java de Visibroker (http://www.inprise.com/visibroker/) permet de développer ce genre d'applets.
- Une application totalement HTML peut accéder à des objets CORBA via des programmes CGI (qui serviront ainsi de passerelle). Les applications peuvent alors générer des pages HTML. Cette méthode à l'avantage de permettre une solution HTML totalement indépendante du browser.
- Certaines extension des serveurs web permettent aussi des accès CORBA. Nous pouvons notamment citer les servlet, les pages ASP, JSP ...
L'interopérabilité représente la possibilité pour deux composants, développés avec des outils différents et différents ORB de travailler ensemble. CORBA 2.0 à introduit l'interopérabilité avec le protocole GIOP (protocole général inter ORB) et sa version Internet IIOP (protocole internet inter ORB). Ainsi, un client utilisant un ORB A peut accéder à un objet sur un serveur utilisant un ORB B.
Les objets CORBA sont définis comme des interfaces à l'aide du langage IDL.