ADVANCED CORBA PROGRAMMING WITH C++
Ouvrage 0-201-37927-9 : ADVANCED CORBA PROGRAMMING WITH C++
Here is the CORBA book that every C++ software
engineer has been waiting for.
Advanced CORBA(r) Programming with C++ provides
designers and developers
with the tools required to understand CORBA
technology at the architectural,
design, and source code levels. This book offers
hands-on explanations for building
efficient applications, as well as lucid examples
that provide practical advice on
avoiding costly mistakes. With this book as a
guide, programmers will find the
support they need to successfully undertake
industrial-strength CORBA
development projects.
The content is systematically arranged and
presented so the book may be used as
both a tutorial and a reference. The rich example
programs in this definitive text
show CORBA developers how to write clearer code
that is more maintainable,
portable, and efficient. The authors' detailed
coverage of the IDL-to-C++ mapping
moves beyond the mechanics of the APIs to discuss
topics such as potential pitfalls
and efficiency. An in-depth presentation of the new
Portable Object Adapter
(POA) explains how to take advantage of its
numerous features to create scalable
and high-performance servers. In addition, detailed
discussion of advanced topics,
such as garbage collection and multithreading,
provides developers with the
knowledge they need to write commercial
applications.
Other highlights
In-depth coverage of IDL, including common idioms
and design trade-offs
Complete and detailed explanations of the Life
Cycle, Naming, Trading, and Event
Services
Discussion of IIOP and implementation repositories
Insight into the dynamic aspects of CORBA, such as
dynamic typing and the new
DynAny interfaces
Advice on selecting appropriate application
architectures and designs
Detailed, portable, and vendor-independent source
code
Table of Contents
Contents
Preface
Chapter 1 Introduction
1.1 Introduction
1.2 Organization of the Book
1.3 CORBA Version
1.4 Typographical Conventions
1.5 Source Code Examples
1.6 Vendor Dependencies
1.7 Contacting the Authors
Part I Introduction to CORBA
Chapter 2 An Overview of CORBA
2.1 Introduction
2.2 The Object Management Group
2.3 Concepts and Terminology
2.4 CORBA Features
2.5 Request Invocation
2.6 General CORBA Application Development
2.7 Summary
Chapter 3 A Minimal CORBA Application
3.1 Chapter Overview
3.2 Writing and Compiling an IDL Definition
3.3 Writing and Compiling a Server
3.4 Writing and Compiling a Client
3.5 Running Client and Server
3.6 Summary
Part II Core CORBA
Chapter 4 The OMG Interface Definition Language
4.1 Chapter Overview
4.2 Introduction
4.3 Compilation
4.4 Source Files
4.5 Lexical Rules
4.6 Basic IDL Types
4.7 User-Defined Types
4.8 Interfaces and Operations
4.9 User Exceptions
4.10 System Exceptions
4.11 System Exceptions or User Exceptions?
4.12 Oneway Operations
4.13 Contexts
4.14 Attributes
4.15 Modules
4.16 Forward Declarations
4.17 Inheritance
4.18 Names and Scoping
4.19 Repository Identifiers and pragma
Directives
4.20 Standard Include Files
4.21 Recent IDL Extensions
4.22 Summary
Chapter 5 IDL for a Climate Control System
5.1 Chapter Overview
5.2 The Climate Control System
5.3 IDL for the Climate Control System
5.4 The Complete Specification
Chapter 6 Basic IDL-to-C++ Mapping
6.1 Chapter Overview
6.2 Introduction
6.3 Mapping for Identifiers
6.4 Mapping for Modules
6.5 The CORBA Module
6.6 Mapping for Basic Types
6.7 Mapping for Constants
6.8 Mapping for Enumerated Types
6.9 Variable-Length Types and _var Types
6.10 The String_var Wrapper Class
6.11 Mapping for Wide Strings
6.12 Mapping for Fixed-Point Types
6.13 Mapping for Structures
6.14 Mapping for Sequences
6.15 Mapping for Arrays
6.16 Mapping for Unions
6.17 Mapping for Recursive Structures and
Unions
6.18 Mapping for Type Definitions
6.19 User-Defined Types and _var Classes
6.20 Summary
Chapter 7 Client-Side C++ Mapping
7.1 Chapter Overview
7.2 Introduction
7.3 Mapping for Interfaces
7.4 Object Reference Types
7.5 Life Cycle of Object References
7.6 Semantics of _ptr References
7.7 Pseudo-Objects
7.8 ORB Initialization
7.9 Initial References
7.10 Stringified References
7.11 The Object Pseudo-Interface
7.12 _var References
7.13 Mapping for Operations and Attributes
7.14 Parameter Passing Rules
7.15 Mapping for Exceptions
7.16 Mapping for Contexts
7.17 Summary
Chapter 8 Developing a Client for the Climate
Control System
8.1 Chapter Overview
8.2 Introduction
8.3 Overall Client Structure
8.4 Included Files
8.5 Helper Functions
8.6 The main Program
8.7 The Complete Client Code
8.8 Summary
Chapter 9 Server-Side C++ Mapping
9.1 Chapter Overview
9.2 Introduction
9.3 Mapping for Interfaces
9.4 Servant Classes
9.5 Object Incarnation
9.6 Server main
9.7 Parameter Passing Rules
9.8 Raising Exceptions
9.9 Tie Classes
9.10 Summary
Chapter 10 Developing a Server for the Climate
Control System
10.1 Chapter Overview
10.2 Introduction
10.3 The Instrument Control Protocol API
10.4 Designing the Thermometer Servant Class
10.5 Implementing the Thermometer Servant Class
10.6 Designing the Thermostat Servant Class
10.7 Implementing the Thermostat Servant Class
10.8 Designing the Controller Servant Class
10.9 Implementing the Controller Servant Class
10.10 Implementing the Server main Function
10.11 The Complete Server Code
10.12 Summary
Chapter 11 The Portable Object Adapter
11.1 Chapter Overview
11.2 Introduction
11.3 POA Fundamentals
11.4 POA Policies
11.5 POA Creation
11.6 Servant IDL Type
11.7 Object Creation and Activation
11.8 Reference, ObjectId, and Servant
11.9 Object Deactivation
11.10 Request Flow Control
11.11 ORB Event Handling
11.12 POA Activation
11.13 POA Destruction
11.14 Applying POA Policies
11.15 Summary
Chapter 12 Object Life Cycle
12.1 Chapter Overview
12.2 Introduction
12.3 Object Factories
12.4 Destroying, Copying, and Moving Objects
12.5 A Critique of the Life Cycle Service
12.6 The Evictor Pattern
12.7 Garbage Collection of Servants
12.8 Garbage Collection of CORBA Objects
12.9 Summary
Part III CORBA Mechanisms
Chapter 13 GIOP, IIOP, and IORs
13.1 Chapter Overview
13.2 An Overview of GIOP
13.3 Common Data Representation
13.4 GIOP Message Formats
13.5 GIOP Connection Management
13.6 Detecting Disorderly Shutdown
13.7 An Overview of IIOP
13.8 Structure of an IOR
13.9 Bidirectional IIOP
13.10 Summary
Chapter 14 Implementation Repositories and
Binding
14.1 Chapter Overview
14.2 Binding Modes
14.3 Direct Binding
14.4 Indirect Binding via an Implementation
Repository
14.5 Migration, Reliability, Performance, and
Scalability
14.6 Activation Modes
14.7 Race Conditions
14.8 Security Considerations
14.9 Summary
Part IV Dynamic CORBA
Chapter 15 C++ Mapping for Type any
15.1 Chapter Overview
15.2 Introduction
15.3 Type any C++ Mapping
15.4 Pitfalls in Type Definitions
15.5 Summary
Chapter 16 Type Codes
16.1 Chapter Overview
16.2 Introduction
16.3 The TypeCode Pseudo-Object
16.4 C++ Mapping for the TypeCode Pseudo-Object
16.5 Type Code Comparisons
16.6 Type Code Constants
16.7 Type Code Comparison for Type any
16.8 Creating Type Codes Dynamically
16.9 Summary
Chapter 17 Type DynAny
17.1 Chapter Overview
17.2 Introduction
17.3 The DynAny Interface
17.4 C++ Mapping for the DynAny Pseudo-Object
17.5 Using DynAny for Generic Display
17.6 Obtaining Type Information
17.7 Summary
Part V CORBAservices
Chapter 18 The OMG Naming Service
18.1 Chapter Overview
18.2 Introduction
18.3 Basic Concepts
18.4 Structure of the Naming Service IDL
18.5 Semantics of Names
18.6 Naming Context IDL
18.7 Iterators
18.8 Pitfalls in the Naming Service
18.9 The Names Library
18.10 Naming Service Tools
18.11 What to Advertise
18.12 When to Advertise
18.13 Federated Naming
18.14 Adding Naming to the Climate Control
System
18.15 Summary
Chapter 19 The OMG Trading Service
19.1 Chapter Overview
19.2 Introduction
19.3 Trading Concepts and Terminology
19.4 IDL Overview
19.5 The Service Type Repository
19.6 The Trader Interfaces
19.7 Exporting Service Offers
19.8 Withdrawing Service Offers
19.9 Modifying Service Offers
19.10 The Trader Constraint Language
19.11 Importing Service Offers
19.12 Bulk Withdrawal
19.13 The Admin Interface
19.14 Inspecting Service Offers
19.15 Exporting Dynamic Properties
19.16 Trader Federation
19.17 Trader Tools
19.18 Architectural Considerations
19.19 What to Advertise
19.20 Avoiding Duplicate Service Offers
19.21 Adding Trading to the Climate Control
System
19.22 Summary
Chapter 20 The OMG Event Service
Auteur : HENNING
Editeur : ADDISON WESLEY
Nombre de pages : 1088
Date de publication : 03 1999
Toute la sélection
Toutes les sélections
Toute la sélection
Site réalisé en partenariat avec Courbis
(Courbis - alternate link), acteur de l'Internet depuis 1988...