A new programming concept
Extract from "Understanding Active X and OLE" by David Chappel
"In the last 35 years, designers of computer hardware have gone from designing machines the
size of a hangar to thin notebooks based on minuscule microprocessors.
In the same period, software developers
have gone from writing programs in assembler and COBOL to writing even bigger programs in C and C++. We could call
this progress (some people may disagree), but clearly the software world does not progress as rapidly as the hardware
world. So what is it that hardware developers have that software developers don't?
The answer lies in the components used. If electronic hardware engineers had to start out from a
heap of sand each time they designed a new hardware device, and the first step involved the extraction of silicon
to manufacture integrated circuit boards, they would not progress very quickly. Thus, a hardware designer always
builds a system based on ready-made components, each one having a specific function and providing a set of services
via defined interfaces. The task of hardware designers is considerably easier thanks to the work of their predecessors.
Re-using components is also a way to create better software. Even today, software developers are
still starting out from a heap of sand and following the same steps as hundreds of developers before them did. The
result is often outstanding, but it could be improved. Creating new applications from existing components, which have
already been tested, always tends to produce more reliable code. What's more, it simply proves to be faster and cheaper,
which is just as important."
The modular object approach involves creating a computerised
representation of the real world elements that we are interested in, without worrying about how it is implemented,
regardless of the programming language used. It therefore involves determining the
objects and isolating their data and the functions that they use, methods were developed for this purpose. Between
1970 and 1990, several analysts developed object-oriented approaches, by 1994 there were more than 50 object methods.
Nevertheless, only 3 methods actually caught on:
- Rumbaugh's OMT method
- Booch's BOOCH'93 method
- Jacobson's OOSE method
Beginning in 1994, Rumbaugh and Booch (later joined by Jacobson in 1995) joined efforts to
develop the UML (Unified Modeling Language)
definition language, which defines a standard language by incorporating the advantages of various preceding methods
(i.e. those of other analysts). This enables the complete programming of an application with a language that uses
a modular approach for all components of the program being developed.