CORBA Development with C++

We are one of the few companies that offers various kinds of CORBA training and consultancy.  We have extensive years of developing distributed applications using CORBA.

CORBA is a mature, standard middleware that combines the interoperability, deterministic execution, and absolute dependability required by distributed embedded systems. CORBA standardizes the interoperability, and Real-time CORBA defines the deterministic execution platform that these systems need, but the full versions of these specifications were designed for a resource-rich, dynamic environment. Most if not all middleware that exist take their lead from the OMG’s CORBA standard, this course will position you with the broadest possible understanding of the middleware market.


Course code: CORBAD-5
Duration: 5 days
List Price: £1695
Pre-requisites: Delegates must have at least 1 years solid software development suing C++.
Delegates will learn: The basics of RPC, distributed systems from the ground up, simple networking principles such as sockets and TCP/UDP, and basic multi-tasking and multi-threading. The Object Management Architecture (OMA), IDL, IDL to C++ mappings including valuetypes, implementing CORBA client and Server applications, implementing CORBA applications that need to be Clients and Servers, the POA, CORBA Event Service, and the wire level protocol IIOP.
Customization: This course is suitable for customization to meet your needs

Topics Covered

The need for Architecture Justify the need for an architecture, what’s its function, what concerns does it address and how do those concerns get addressed.
Distributed Object Systems and Middleware What is a DOS, what function does it serve, what are the core DOS principles, and what standards are available. Examine what are the risks, why OO concepts are important, and the need for distributed transactional systems.
OMG OMA Understand the nature of the OMG’s Object Management Architecture, a key prelude what is currently termed an ESB.
Overview of IDL Interface Definition Language. A key strategic component in the OMA armoury for the design of a robust DOS.
IDL Fundamental types Look at the fundamental data types supported by IDL; short, long, float, string etc.
Mapping IDL Fundamentals to C++ Understand how the above fundamental data types are realised in C++ code.
IDL User Defined types Learn how to define structured data types from using fundamental data types. You will define structures, enums, arrays and dyanamic arrays.
Mapping IDL User Defined types to C++ Understand how how the above user defined data types are mapped to C++ code.
IDL Exceptions One of the key differences between CORBA and many other middleware technologies is its ability to support structured exceptional handling. Learn how to write IDL exceptions.
Mapping IDL Exceptions to C++ Understand how IDL exceptions are mapped to C++ code.
Working with IDL Interfaces in C++ Understand how to effectively manage memory the CORBA way, creating a CORBA server, passing CORBA interfaces across the wire and ensuring CORBA object references are effectively maintained. Learn how to write robust CORBA client, and receiving and passing interface references.
Naming and Trading Services Learn how to with the Naming and Trading Service in C++.
CORBA POAs The Portable Object Adaptor is a key component to building scalable CORBA servers. This chapters teaches you how to initiate a basic POA, and create and initialise customised POAs.
Valuetypes Valuetypes allow a you to simulate an object being passed across the wire. Learn how to work with valuetypes.
Advanced POA features Learn how to build CORBA servers that support lazy activation, and support for the Evictor Pattern.
The Events Service Learn how to work with the Event service in C++.
Exercise Throughout the course there is an ongoing case study which is used to demonstrate how the above technologies function together in a coherent manner.