Grid is a simple example that demonstrates the programming with
In directory /vb/demo/grid of VBOrb you will find the grid client.
In directory /vb/demo/grid_server of VBOrb
you will find the grid server.
File /vb/demo/grid/grid.idl describes the interface of the
The first step to develop a CORBA program is to describe the interface
between client and server. This usually happens by writing a file in CORBA IDL
(Interface Definition Language). The interface of the Grid example is
// grid.idl, IDL definition of a 2-D grid
module grid // I call the module like the project grid
interface MyServer // Name of the grid object
readonly attribute short height; // height of the grid
readonly attribute short width; // width of the grid
// set the element [n,m] of the grid to value:
void set(in short n, in short m, in long value);
// return element [n,m] of the grid:
long get(in short n, in short m);
// A grid client should be able to shutdown the server
oneway void shutdownServer();
Describing an interface in a file is static. CORBA also knows a dynamically way
to describe an interface.
The second step to create a CORBA program is to compile the interface definition
to the desired programming language. For Visual Basic the only compiler I know
is my IDL2VB. If you want to write your client or server in C++ or Java you
will find many kind of compilers in the internet.
A CORBA program can be client or server or both. The grid example consist of
a server exporting an interface and a client calling that interface.
Writing the grid server
To implement an interface a server needs skeletons or use the DSI
(Dynamic Skeleton Interface). The grid interface is staticaly so the
IDL compiler generates the
Writing the grid client
Writing the grid client is simple because a remote interface appears to be a
local Visual Basic object. The ORB delivers application requests to the right
objects no matter where they live. First you need only one instance of the
This page is under construction
If i will have more time I will explain more about writing software
explaining narrow, etc