COM and CORBA Side by Side

Series
Addison-Wesley
Author
Jason Pritchard  
Publisher
Addison-Wesley
Cover
Softcover
Edition
1
Language
English
Total pages
464
Pub.-date
July 1999
ISBN13
9780201379457
ISBN
0201379457
Related Titles


Product detail

Product Price CHF Available  
9780201379457
COM and CORBA Side by Side
51.60 approx. 7-9 days

Table of Contents

(Most chapters conclude with "Summary".)

I. EMBRACING COM AND CORBA.

1. The Arrival of Distributed Objects.

Client/Server Beginnings.

2-Tier, 3-Tier, and N-Tier Architectures.

Communicating Between Tiers.

The Power of Distributed Objects.

From Objects to Components.

Managing Distributed Systems.

The State of Distributed Objects.

2. The Dominance of COM and CORBA.

The Distributed Object Landscape.

Microsoft's COM/DCOM.

IBM's SOM/DSOM.

CORBA.

Java RMI.

ObjectSpace's Voyager.

Summary.

COM: The Dominant Component Architecture.

CORBA: The Dominant Remoting Architecture.

Evolutionary Trends.

A Test of Wills.

Vendor Perspective.

User Perspective.

Who Is the Winner.

3. Distributed Object Fundamentals.

An Overview of the Fundamentals.

A Distributed Object Example.

COM Object and Clients.

CORBA Object and Clients.

Reviewing the Requirements.

Demonstrating the Fundamentals.

Selecting Data Types.

Defining the Interfaces.

COM IDL and Type Libraries.

CORBA IDL.

Proxies, Stubs, and Skeletons.

COM Proxies and Stubs.

COM Type Library Marshaling.

CORBA Stubs and Skeletons.

Implementing the Servers.

Implementing the Clients.

Using IDL in the COM C++ Client.

Using a Type Library in the COM Visual Basic Client.

Using IDL in the Orbix CORBA C++ Client.

Using IDL in the VisiBroker CORBA Java Client.

Client Implementation.

Summary.

Object Handles.

COM Interface Pointers in C++.

COM Interface Pointers in Visual Basic.

CORBA Object References in C++.

CORBA Object References in Java.

Creating Objects.

COM Factories.

COM Object Creation in C++.

COM Object Creation in Visual Basic.

CORBA Factories.

CORBA Object Creation in C++ and Java.

Invoking Object Methods.

COM HRESULTs.

COM Error Handling in the C++ Client.

COM Error Handling in the Visual Basic Client.

CORBA Exceptions.

CORBA Exception Handling in the C++ and Java Clients.

Destroying Objects.

Destroying COM Objects.

Destroying CORBA Objects.

Summary.

II. COM AND CORBA ON THE SERVER.

4. Assessing the Server Side.

What Constitutes the Server Side.

Partitioning the Enterprise.

Strategic Directions of COM and CORBA.

COM: A Vertical Strategy.

CORBA: A Horizontal Strategy.

The Need for an Assessment Strategy.

Assessment Criteria.

Platform Criteria.

Essential Services.

Intangibles.

An Assessment Strategy.

Prerequisites.

Recording the Assessment History.

Rating the Criteria.

Assessment Steps.

An Assessment Example.

COM and CORBA in Your Enterprise Solution.

5. The Server Platform.

Review of the Platform Criteria.

Legacy System Support.

General Approaches for Supporting Legacy Systems.

Identifying Significant Legacy Systems.

Selecting Platforms for New Development.

Wrapper Approach.

Gateway Approach.

Legacy Support When Using COM.

COM and the Wrapper Approach.

COM and the Gateway Approach.

Using COM to Access Legacy Data.

COM Integration with CICS and IMS.

COM Integration with IBM's MQSeries.

Summary of COM-Related Legacy Support.

Legacy Support When Using CORBA.

CORBA and the Wrapper Approach.

CORBA and the Gateway Approach.

Summary of CORBA-Related Legacy Support.

The Development Platform.

COM Development Platforms.

COM/Windows/C++ Development Platform.

COM/Windows/Java Development Platform.

COM/Windows/Visual Basic Development Platform.

Non-Windows COM Development Platforms.

CORBA Development Platforms.

Availability of Development Tools.

COM Development Tools.

CORBA Development Tools.

Summary.

6. Essential Services.

Review of the Service Criteria.

Distributed Transaction Support.

A Scenario for a Distributed Object Transaction.

COM, MTS, and the Distributed Transaction Coordinator.

CORBA and the Object Transaction Service.

Distributed Security.

DCOM Security.

MTS Security.

CORBA and the Secure Sockets Layer.

The CORBA Security Service.

Messaging Support.

COM and Microsoft Message Queue Server.

CORBA and Messaging Support.

Distributed Object Management.

The Need for Stateless Objects.

COM Object Management Under Microsoft's MTS.

CORBA Object Management Under BEA Systems' M3.

Summary.

7. Server-Side Intangibles.

Vendor Perception.

Vendor Commitment and Viability.

Vendor Lock-in.

Availability of Product.

Availability of Development Staff.

Product Cost.

Server-Side Summary.

III. COM AND CORBA ON THE CLIENT.

8. The Desktop Client.

Impact of Distributed Objects.

Dominance of COM on the Desktop.

COM Client Approaches.

Custom Interfaces.

Automation Interfaces.

Dual Interfaces.

Installing Remote COM Clients.

COM Development Environments.

The Visual Basic COM Client.

The Visual J++ COM Client.

The Visual C++ COM Client.

Summary.

9. The Internet Client.

Distributed Object Internet Strategies.

COM Internet Strategies.

CORBA Internet Strategies.

Using COM with Active Server Pages.

Using CORBA in a Java Applet.

The Push Technology Alternative.

Summary.

10. Client Design Considerations.

Remoting Requirements and Design Issues.

Client Needs Versus Remoting Requirements.

Security Issues for Internet Clients.

Security Issues When Using Active Server Pages.

Security Issues When Using Java Applets.

Migrating from the Desktop to the Internet.

Implementing the COM and CORBA Customer Servers.

The COM Customer Server and Proxy.

The COM Customer Wrapper.

The CORBA Customer Server and Proxy.

Implementing the COM/CORBA Customer Bridge.

The COM-to-CORBA Customer Bridge.

The CORBA-to-COM Customer Bridge.

Implementing the COM and CORBA Customer Clients.

The Visual Basic Customer Client.

The Active Server Pages Customer Client.

The CORBA/Java Customer Client.

Migration Summary.

Client-Side Summary.

IV. BRIDGING COM AND CORBA.

11. Custom Bridging Approaches.

Overview of Bridging Example.

Using C++ to Bridge COM and CORBA.

Using Microsoft's JVM as a Bridge.

Using a CORBA/Java ORB with Microsoft's JVM.

A COM-to-CORBA Bridge.

A Visual Basic Client.

Other COM/CORBA Bridging Approaches.

Using COM in Non-Microsoft JVMs.

Bridging ActiveX and JavaBeans.

Using Environments That Support COM and CORBA.

Future Java/COM Support from Microsoft.

Summary.

12. Commercial Bridging Approach.

COM/CORBA Interworking Specification.

Vendor Support for COM/CORBA Bridging.

A Commercial Bridging Example.

Selecting a Commercial Bridging Product.

The CORBA Server.

Creating a COM View for the CORBA Server.

Using the CORBA Server from a Visual Basic Client.

Using COM Servers from CORBA Clients.

Bridging COM/CORBA Services.

Summary.

13. Enterprise Application Servers.

Emergence of Enterprise Application Servers.

Early Web Application Servers.

The Need for Enterprise Application Servers.

Enterprise Application Server Criteria.

Enterprise Application Server Approaches.

COM Approach.

CORBA Approach.

Enterprise JavaBeans Approach.

Summary.

14. Conclusion.

A Summary of What We've Covered.

Embracing COM and CORBA (Part I).

COM and CORBA on the Server (Part II).

COM and CORBA on the Client (Part III).

Bridging COM and CORBA (Part IV).

Farewell.

APPENDICES.

Appendix A. References.

On COM.

On CORBA.

On COM/CORBA Bridging.

Appendix B. Examples Available for Download.

Chapter 3 Examples.

Clients.

COM C++ Client.

COM Visual Basic Client.

CORBA C++ Client.

CORBA Java Client.

Servers.

COM IDL.

CORBA IDL.

COM C++ Server.

CORBA C++ Server.

JWPTOC.fm Page xi Wednesday, May 26, 1999 11:21 PMxii Contents

Chapter 6 Examples.

MTS Example.

MTS Account Server.

MTS Teller Server.

MTS Client.

COM Security.

COM Secure Agent Server.

COM Secure Client.

MTS Secure Account Server.

MTS Secure Client.

MSMQ Example.

MSMQ Market Application.

MSMQ Trader Application.

Chapter 8 Examples.

Automation Interface Approach.

Visual J++ Server.

Visual Basic Client.

Visual C++ Client.

Visual J++ Client.

Custom Interface Approach.

Visual C++ Server.

Visual Basic Client.

Visual C++ Client.

Visual J++ Client.

Dual Interface Approach.

Visual Basic Server.

Visual C++ Server.

Visual J++ Server.

Visual Basic Client.

Visual Basic Automation Client.

Visual C++ Client.

Visual J++ Client.

Chapter 9 Examples.

Clients.

COM Active Server Pages Client.

CORBA Java Applet.

Servers.

COM IDL.

CORBA IDL.

COM Server.

CORBA Server.

Chapter 10 Examples.

Clients.

COM Active Server Pages Client.

COM Visual Basic Client.

CORBA Java Applet.

Servers.

COM IDL.

CORBA IDL.

COM Customer Interface.

COM Customer Wrapper.

COM Customer Server.

COM Customer Proxy.

COM-to-CORBA Bridge.

CORBA Customer Server.

CORBA Customer Proxy.

CORBA-to-COM Bridge.

Chapter 11 Examples.

COM IDL.

CORBA IDL.

COM Client.

COM-to-CORBA Bridge.

CORBA Server.

Chapter 12 Examples.

Bindings Generated by Commercial Bridging Product.

COM Client.

CORBA Server.

Appendix C. Selected Example Code.

MyCheckingAccount Classes (from Ch. 3).

COM/C++ MyCheckingAccount Class.

COM/Visual Basic MyCheckingAccount Class.

CORBA/C++ MyCheckingAccount Class.

CORBA/Java MyCheckingAccount Class.

MTS Components (from Ch. 6).

Ch6Teller MTS Component.

Ch6Account MTS Component.

MSMQ Applications (from Ch. 6).

Trader MSMQ Application.

Stock Market MSMQ Application.

Index. 0201379457T04062001

Back Cover

The COM and CORBA technologies are often pitted against each other, viewed simply as competing architectures for creating distributed solutions. While the most significant difference between COM and CORBA is their support for different operating system platforms, software developers must realize that each technology has its own strengths that clearly differentiate it from the other. In COM and CORBA(r) Side by Side, Jason Pritchard objectively describes when and how developers should use both technologies--together or separately--to maximize the success of their designs.

This book helps software practitioners analyze and transcend their personal biases toward COM or CORBA so that they may objectively seek the best implementation strategy. The author helps you cut through vendor marketing hype by presenting a clear, logical formula to help you choose between the two technologies. In short, COM and CORBA(r) Side by Side is an invaluable resource for making informed, critical decisions about using one or both of these technologies in your next project.

Other highlights of this book.

  • Explains why COM and CORBA currently hold dominant positions in the marketplace
  • Describes an objective strategy for assessing the use of the two architectures on the server
  • Examines client approaches for each technology, including design issues related to remoting and security
  • Illustrates how COM and CORBA can be used together, with details on both custom and commercial bridging approaches


0201379457B04062001

Author

Jason Pritchard, Ph.D., has extensive experience programming with CORBA and COM. As a developer and architectural lead for PSW Technologies, he has become an authority on both technologies and has gained vast insight into their coexistence and interoperability.



0201379457AB04062001