Synopsis
If you're a programmer using C++, Smalltalk, or Eiffel, or if you're about to migrate to object orientation for the first time, you need to know the most important principles of object-oriented design. For example: In a reliable design, why must a variable's cone of polymorphism lie within that of a method? Is connascence good or bad? How could the inherited methods of a superclass violate the invariant of a subclassand how can you prevent this?
Page-Jones answers these questions and more, with characteristic clarity, demystifying the fundamentals of object orientation in a language-independent way. He provides a comprehensive notation for object-oriented design that allows you to depict the design for a whole system or to jot down back-of-the-envelope ideas.
Popular author and consultant Melir Page-Jones has held positions ranging from maintenance programmer to project manager. He is currently President of Wayland Systems, a software-engineering training and consulting firm based in Bellevue, Washington.
Booknews
Demystifies the fundamentals of object-orientation without emphasizing one particular programming language, for students in a final-year course in computer-science or a software-engineering course on object orientation. After an introduction to the subject and its history, Part II covers object-oriented design notation, and Part III treats design principles in depth, from encapsulation to class interfaces. Includes chapter summaries, exercises with answers, appendices, and a glossary. Annotation c. Book News, Inc., Portland, OR (booknews.com)