O'Reilly logo

Program Development in Java: Abstraction, Specification, and Object-Oriented Design by John Guttag, Barbara Liskov

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

13 Design

In preceding chapters, we have discussed the specification and implementation of individual abstractions. We have emphasized abstractions because they are the building blocks out of which programs are constructed. We now discuss how to invent abstractions and how to put them together to build good programs. Our approach will rely heavily on material presented earlier, especially our discussions of good abstractions and good specifications (for example, see Chapter 9).

13.1 An Overview of the Design Process

The purpose of design is to define a program structure consisting of a number of modules that can be implemented independently and that, when implemented, will together satisfy the requirements specification. This structure must ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required