Class skeleton
Encyclopedia

As pattern

A class skeleton is an outline of a class
Class (computer science)
In object-oriented programming, a class is a construct that is used as a blueprint to create instances of itself – referred to as class instances, class objects, instance objects or simply objects. A class defines constituent members which enable these class instances to have state and behavior...

 that is used in software engineering
Software engineering
Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...

. It contains a description of the class's roles, and describes the purposes of the variables
Variable (programming)
In computer programming, a variable is a symbolic name given to some known or unknown quantity or information, for the purpose of allowing the name to be used independently of the information it represents...

 and method
Method (computer science)
In object-oriented programming, a method is a subroutine associated with a class. Methods define the behavior to be exhibited by instances of the associated class at program run time...

s, but does not implement them. The class is later implemented
Implementation
Implementation is the realization of an application, or execution of a plan, idea, model, design, specification, standard, algorithm, or policy.-Computer Science:...

 from the skeleton.

As server side object

In a distributed computing
Distributed computing
Distributed computing is a field of computer science that studies distributed systems. A distributed system consists of multiple autonomous computers that communicate through a computer network. The computers interact with each other in order to achieve a common goal...

 environment a skeleton stands for a server side object participating in distributed object communication
Distributed object communication
Distributed object communication realizes communication between distributed objects in the distributed computing environment.The main role is to interconnect objects residing in non-local memory space and allowing them to perform remote calls and exchange data. The widely used approach on how to...

.

A skeleton acts as gateway for server side objects and all incoming clients requests are routed through it. The skeleton
wraps server object functionality and exposes it to the clients, moreover by adding the network logic ensures the reliable communication channel between clients and server. Skeletons can be written up manually or generated automatically depending on chosen communication protocol.

The skeleton is responsible for:
  • translating incoming data from the stub
    Class stub
    In the distributed computing environment, stub stands for client side object participating in the distributed object communication.The stub acts as a gateway for client side objects and all outgoing requests to server side objects that are routed through it...

     to the correct up-calls to server objects
  • unmarshalling
    Serialization
    In computer science, in the context of data storage and transmission, serialization is the process of converting a data structure or object state into a format that can be stored and "resurrected" later in the same or another computer environment...

     of the arguments from received data
  • passing arguments to server objects
  • marshalling
    Marshalling (computer science)
    In computer science, marshalling is the process of transforming the memory representation of an object to a data format suitable for storage or transmission...

     of the returned values from server objects
  • passing values back to the client stub
    Class stub
    In the distributed computing environment, stub stands for client side object participating in the distributed object communication.The stub acts as a gateway for client side objects and all outgoing requests to server side objects that are routed through it...

     over the network

Protocols using stub/skeleton approach

  • RPC
    Remote procedure call
    In computer science, a remote procedure call is an inter-process communication that allows a computer program to cause a subroutine or procedure to execute in another address space without the programmer explicitly coding the details for this remote interaction...

     - Remote Procedure Call;
  • CORBA
    Çorba
    Chorba , ciorbă , shurpa , shorpo , or sorpa is one of various kinds of soup or stew found in national cuisines across Middle East...

     - Common Object Request Broker Architecture;
  • DCE
    Distributed Computing Environment
    The Distributed Computing Environment is a software system developed in the early 1990s by a consortium that included Apollo Computer , IBM, Digital Equipment Corporation, and others. The DCE supplies a framework and toolkit for developing client/server applications...

     - Distributed Computing Environment;
  • RMI - Remote Method Invocation;
  • .NET Remoting
    .NET Remoting
    .NET Remoting is a Microsoft application programming interface for interprocess communication released in 2002 with the 1.0 version of .NET Framework. It is one in a series of Microsoft technologies that began in 1990 with the first version of Object Linking and Embedding for 16-bit Windows...

     - .NET Remoting;
  • DCOM
    Distributed component object model
    Distributed Component Object Model is a proprietary Microsoft technology for communication among software components distributed across networked computers. DCOM, which originally was called "Network OLE", extends Microsoft's COM, and provides the communication substrate under Microsoft's COM+...

     - Distributed Component Object Model (note that the stub is called "proxy" and the skeleton is called "stub");
  • DDObjects
    DDObjects
    DDObjects is a remoting framework for Borland Delphi and C++ Builder. A main goal while developing DDObjects has not been only to keep the code one has to implement in order to utilize DDObjects as simple as possible but also very close to Delphi's usual style of event-driven programming.DDObjects...

     is a framework for distributed objects using Borland Delphi;
  • Distributed Ruby
    Distributed Ruby
    Distributed Ruby or DRb allows Ruby programs to communicate with each other on the same machine or over a network. DRb uses remote method invocation to pass commands and data between processes.- External links :* * *...

     (DRb) is a framework for distributed objects using the Ruby programming language.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK