topical media & game development

talk show tell print

object-oriented programming


object-oriented programming

This chapter has given an overview of component technology. It discussed standards for interoperability, including (D)COM, CORBA and Java. It gave an example application using both Java and CORBA, and discussed the issues involved in extending an existing library with CORBA.

Objects versus components


slide: Section 6.1: Objects versus components

In section 1, we looked at some definitions of components to clarify how component technology differs from object technology. A brief overview of existing technology was given and an attempt was made to demystify component-based development.

Standards for interoperability


slide: Section 6.2: Standards for interoperability

In section 2 we looked in somewhat more detail at component technologies that, each in their own way, set a standard for interoperability.

The Java platform


  • a matter of perspectives

slide: Section 6.3: The Java platform

In section 3, we discussed the Java platform from a variety of perspectives, as listed in slide 6-3. We weighted the pros and cons of Java from each of these perspectives, and concluded that Java is a promising platform.

An Internet-based workgroup application


  • agent, workgroup, agenda, appointment
  • CORBA server, Java applets

slide: Section 6.4: An Internet-based workgroup application

In section 4, we looked at the outline of a simple workgroup application, that allows for creating appointments mediated by agents that act as a representative of a user. The workgroup illustrates the use of Java applets and CORBA servers.

Crush -- extending hush with CORBA


  • factories -- (distributed) object tables
  • server wrappers -- remote objects
  • client-side adaptors -- transparent typing

slide: Section 6.5: Crush -- extending hush with CORBA

Finally, in section 5, we discussed the issues involved in extending a framework such as hush with CORBA. Apart from the definition of interfaces and server wrappers, we defined client-side adaptors to attain a transparent integration of CORBA object handles and the types native to the framework.

object-oriented programming


  1. Give a definition of the notion of components. How is this related to a definition of objects? Explain the difference between these definitions.
  2. What actual component technologies can you think of? How would you compare them?
  3. Describe Microsoft (D)COM, OMG CORBA, ODMG Persistent Objects. Is there any relation between these standards?
  4. Discuss the Java platform. What perspectives can you think of? Discuss pros and cons.
  5. Describe the architecture of an Internet-based workgroup application. What technology would you use?
  6. What issues may arise in extending a given library or framework with CORBA? Can you think of any solutions?

slide: Questions

object-oriented programming

Further reading

I recommend  [Szyperski97], both as an introduction to component-technology, and as a reference for more advanced readers. For an introduction to CORBA, you may read  [Siegel96]. A readable account of the ODMG standard is given in  [Cattell94]. For more information on Java, again, visit . For information on (D)COM, look at . Learning how to program CORBA applications is probably best learned from the manuals that come with your CORBA distribution. For an evaluation of object store management and naming schemes see  [Persistent].

(C) Æliens 04/09/2009

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.