Distributed Object Computing with CORBA
Including updates on CORBA 2.0
A one day course by
David Chappell.
Description
The union of object-oriented technology with distributed computing has
the potential to revolutionize the software industry. Alternatively,
it's blue smoke and mirrors, vendor hype that is years from fruition.
The debate is primarily focused around the Object Management Group's
Common Object Request Broker Architecture (CORBA). CORBA defines an
architecture for communication between objects, an Interface
Definition Language (IDL) for defining the interactions between those
objects, and a number of other things. In the CORBA world, older
technologies for distributed computing such as sockets or remote
procedure calls are made obsolete. Instead, all interactions are
between (possibly distributed) objects, implemented in various
languages and running in a variety of environments. The goal is to
create a standard infrastructure for interaction between "software
ICs": reusable, distributed application components. While many
vendors currently support or soon will support CORBA, they all do it
differently. The goal of this tutorial is to explain what CORBA is,
why it's important, what's missing from it, and what major vendors are
doing about it. Along with a technical description of CORBA and its
components, the tutorial describes several CORBA implementations,
including those from DEC, HP, and IBM.
Who should attend ?
The course is aimed at anyone who needs to understand the increasingly
important relationship between object technology and distributed
computing. While some background in both object-oriented concepts and
distributed computing will be helpful, none is required, although
knowledge of the C programming language is strongly recommended.
Course outline
Part I: Defining distributed object computing
- Introduction
- The problems to be solved
- How distributed object computing solves them
- The Object Management Group (OMG)
- Other players
- An overview of object-oriented concepts
- Defining objects
- Key concepts: encapsulation, inheritance, polymorphism
- An overview of distributed computing
- DCE: RPC, threads, naming, security
- ONC and ONC+: RPC, naming, security
Part II. The OMG Common Object Request Broker Architecture (CORBA)
- Defining CORBA
- Architecture
- Objects and interfaces
- Stubs and the IDL compiler
- The Dynamic Invocation Interface
- The Interface Repository
- The Interface Definition Language (IDL)
- IDL types
- Defining operations
- Inheritance in IDL
- Object Services
- Naming
- Events
- Life Cycle
- Persistence
Part III: Implementing CORBA: Vendor approaches
- DEC's ObjectBroker
- Sunsoft's Project DOE (Distributed Objects Everywhere)
- IBM's Distributed System Object Model (DSOM)
- HyperDesk's Distributed Object Management System (DOMS)
- Hewlett-Packard's ORB+
- Others
Information on current offerings.