An object oriented programming environment is extended to allow a client object
oriented application running under a client/server operating system to communicate
with a plurality of server object oriented applications located on one or more
remote computers in a distributed computer environment. The extended object oriented
programming environment provides the capability for a client object oriented application
to connect to, and communicate with remote server object oriented applications
as well as make object references to remote objects and remote object data. The
extended object oriented programming environment is used for designing N-tiered
logical models for distributed computing applications, while providing a flexible
and adaptable M-tiered physical model underneath the N-tiered logical model. This
environment is also used to provide the ability to reference remote objects from
Internet and other client network applications.