Previous | Table of Contents | Next |
A client of an object has access to an object reference for the object, and invokes operations on the object. A client knows
only the logical structure of the object according to its interface and experiences the behavior of the object through invocations.
Although we will generally consider a client to be a program or process initiating requests on an object, it is important
to recognize that something is a client relative to a particular object. For example, the implementation of one object may
be a client of other objects.
Clients generally see objects and ORB interfaces through the perspective of a language mapping, bringing the ORB right up
to the programmer’s level. Clients are maximally portable and should be able to work without source changes on any ORB that
supports the desired language mapping with any object instance that implements the desired interface. Clients have no knowledge
of the implementation of the object, which object adapter is used by the implementation, or which ORB is used to access it.