Corba Fundamentals   «Prev  Next»
Lesson 4 What can I expect from Corba Fundamentals?
Objective What are the key course features for Corba Fundamentals?

Corba Fundamentals Expectations

This course uses a number of interactive features to help you learn the material. You may want to review the following features before starting your coursework.
To find out where you are in the course look at the Module Number and Lesson Number.
Mouseover Tooltip

Quizzes and exercises

Throughout the course, you will find multiple-choice quizzes and hands-on exercises.
These feedback mechanisms will allow you to assess what you have learned. Some of the exercises in this course require you to copy and paste text between a text editor and your web browser.


A Slideshow is a script that presents a series of images that you can flip through, either forward or backward.
In this course, we will be using Slideshow to illustrate some of the commonly used design patterns.

MouseOver Image

Whenever you see this graphic within the course, a widget that explains or dissects some element of a design pattern will follow. Move your mouse cursor over the elements of the image outlined in red to display the information with respect to the image.

Course glossary

Many of the terms used in the course are defined in a JavaScript glossary. The terms appear as italicized in the lesson text. You can reach the glossary from the following link. Corba Fundamentals - Glossary

The Revolution: Client/Server Architecture

The advent of the PC made possible a dramatic paradigm shift from the monolithic architecture of mainframe-based applications. These legacy applications required the mainframe itself to perform all the processing, applications based on the client/server architecture allowed some of that processing to be offloaded to PCs on the desktops of users. Along with the client/server revolution came the proliferation of UNIX-based servers. Many applications simply did not require the massive power of mainframes, and because the client/server architecture was capable of moving much of the processing load to the desktop PC, these smaller UNIX-based server machines were often more cost-effective than mainframes. Client server machines were more affordable to small businesses than mainframes, which were often simply out of reach for companies short on cash.
Still another benefit was the empowerment of individual departments within an organization to deploy and manage their own servers. The result was that these departments could be more responsive to their specific needs when developing their own applications, rather than having to jump through hoops to get the department controlling the mainframes to develop applications, as was often the case. Finally, whereas terminals were typically restricted to running only applications on the mainframe, a PC was capable of performing many other tasks independently of the mainframe, further enhancing its usefulness as a desktop machine.

Client/server applications typically distributed the components of the application so that the database would reside on the server (whether a UNIX box or mainframe), the user interface would reside on the client, and the business logic would reside in either or both components. When changes were made to parts of the client component, new copies of the client component (usually executables or a set of executables) had to be distributed to each user. With the advent of multitier client/server architecture, the "original" client/server architecture is now referred to as "two-tier" client/server.