REVIEW - Navigating C++ and Object-Oriented Design


Navigating C++ and Object-Oriented Design


Paul Anderson, Gail Anderson



Prentice Hall Professional (1998)




Brian Bramer


October 1998



Design is as important as implementation and the authors state 'one cannot use C++ effectively without using object-oriented design'.

Chapter one introduces C++ features (inheritance, polymorphism, template container classes, etc.) together with OMT (Object Modelling Technique) modelling notation and OO design concepts (aggregation, association, inheritance, etc.) Chapters two and three cover language basics (may be skipped by a C programmer) and chapters four, five and six Classes and overloading (may be skipped if one has C++ experience). Advanced topics start at page 307 looking at class design, customise storage management (overloading new and delete), template functions and classes, inheritance, RTTI, exception handling and multiple inheritance. All the advances in C++ over the past few years are covered (templates, namespaces, RTTI, etc.).

I liked the style of this book - good design is emphasised, the explanations are clear and concise with plenty of example programs. My major reservation is that the STL is not used in the main text, the authors preferring to implement their own containers to bring out design issues (there is an overview of the STL in an appendix). The STL is a fundamental part of C++, has a major effect on how it is taught and any new text should reflect this (e.g. the STL could have been used in the early chapters to bring out OO concepts and the latter chapters could have compared the containers implemented with similar facilities in the STL). Not recommended for a reader new to C++, but worth considering by experienced C++ programmer who wishes to learn more about design issues and update their knowledge to the latest C++ specification.

Book cover image courtesy of Open Library.

Your Privacy

By clicking "Accept All Cookies" you agree ACCU can store cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

By clicking "Share IP Address" you agree ACCU can forward your IP address to third-party sites to enhance the information presented on the site, and that these sites may store cookies on your device.