Common Object Request Broker Architecture: Difference between revisions

Content deleted Content added
Line 26:
CORBA enables communication between software written in different languages and running on different computers. Implementation details from specific operating systems, programming languages, and hardware platforms are all removed from the responsibility of developers who use CORBA. CORBA normalizes the method-call semantics between application objects residing either in the same address-space (application) or in remote address-spaces (same host, or remote host on a network). Version 1.0 was released in October 1991.
 
CORBA uses an [[interface definition language]] (IDL) to specify the interfaces that objects present to the outer world. CORBA then specifies a ''mapping'' from IDL to a specific implementation language like [[C++]] or [[Java (programming language)|Java]]. Standard mappings exist for [[Ada (programming language)|Ada]], [[C (programming language)|C]], [[C++]], [[C++11]], [[COBOL]], [[Java (programming language)|Java]], [[Lisp (programming language)|Lisp]], [[PL/I]], [[Object Pascal]], [[Python (programming language)|Python]], [[Ruby (programming language)|Ruby]] and [[Smalltalk]]. Non-standard mappings exist for [[C Sharp (programming language)|C#]], [[Erlang (programming language)|Erlang]], [[Perl]], [[Tcl]] and [[Visual Basic]] implemented by [[object request broker]]s (ORBs) written for those languages. Versions of IDL have changed significantly with annotations replacing some pragmas [[3]].
 
The CORBA specification dictates there shall be an ORB through which an application would interact with other objects. This is how it is implemented in practice: