ACCU Menu

Advertisement

Advertisement

Membership

Login

ACCU Buttons

Add them to your site:

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review.
The result is a large, high quality collection of book reviews by programmers, for programmers.
Currently there are 1918 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search
is a search of the text of the review.

I am very much in two minds about this book. The Preface states
that the book is aimed at being an introductory or advanced text on
object-oriented programming and can be used for a graduate course on
OOP and C++ topics.

This book is very good at introducing object-oriented principles and
how they are implemented in C++. The book eases the reader through data
abstraction, inheritance, generic types and exceptions. In each case
easy to understand examples are used to highlight points brought up by
the text. For most of the object-oriented topics that are covered, there
are also brief notes on how they are handled in Smalltalk and Eiffel.

Dattatri had previously worked for Taligent and that is easy to see
through the coding standards used throughout the book. As long as
you can look past the class prefix 'T', enumerated type prefixes and
member variables starting with '_' the examples are very good ('Names
starting with an underscore are reserved for special facilities in the
implementation and the run-time environment, so such names should not
be used in application programs.' C++ Programming Language, 3rd Ed,
Stroustrup, 4.9.3 Names).

As with most classroom examples, strings, dates and containers make
appearances in the book. This leads me on to my only negative comment
and that is that the standard library only gets a brief mention on page
685 in reference to the STL containers, iterators and algorithms. The
standard strings make a one-line appearance in the Appendix covering
namespaces and the standard exceptions are not covered at all.

Having said that though, the book is very good at getting across the
underlying substance of object-oriented programming. It does cover issues
such as multiple inheritance and the issues that come along with it,
private inheritance and idioms such as handle-body.

I would recommend this book highly for its coverage of object-oriented
software development and recommend with reservations its coverage of C++,
but those reservations are based mainly on the lack of reference to the
standard library.