Chapter 4 - Packages for structured programming

One of Ada's prime goals was to directly support the development of very large software projects. One feature of large software systems is its break down into units, they may be called layers, subsystems, modules, or services it really doesn't matter; what matters is that in between layers there is an interface and it is the communication over these interfaces which causes so many problems in a large team.

In C and C++ there is currently no support for the management or packaging of the interfaces between software systems. A number of languages have attempted to solve this problem, notable the Modula family with the concept of modules, a unit of code with a given interface which provides the public view of a software component.

It is necessary to understand the differences between C/C++ and Ada at a more fundamental level before we discuss Ada packages (section 7 of the reference manual), we need to discuss the backgrounds of the languages and the models used in their design.


Previous PageContents PageNext Page

Copyright © 1996 Simon Johnston &
Addison Wesley Longman