Construction of robust class hierarchies
Arne Frick, Gerhard Goos, R. Neumann, Wolf Zimmermann · Software Practice and Experience · 2000
This article discusses the problem of constructing robust class libraries. Further design criteria include the flexibility of class libraries, the efficiency of the implementations, and their safe extensibility. We show that it is possible to design robust libraries to satisfy any two of the requirements at the same time. Although the solution may require an exponential growth in the number of classes compared to the original design, this apparent class explosion can be controlled by generating only the necessary additional classes automatically. As an application demonstrating both the theoretical problems and the power of our generator approach, the design of a library modelling data structures and algorithms for graphs is considered. Both the discussion and the results in this article generalize to other domains. Copyright © 2000 John Wiley & Sons, Ltd.