A book worthy of a read by almost anyone in OO development
Language wars are one of the major talking points of our profession; some of these are well rounded discussions, but most descend for some reason into 'my language is better than your language' arguments, which are neither reasoned nor productive. So a book comparing Java, Eiffel and C++ is not exactly non-controversial ground. Joyner comes over as a bit of an Eiffel advocate, but mostly he manages to hide this bias to produce a pretty good comparison of the 3 languages. However for me his background shows when the subjects of references and garbage collection are brought up; he fails to note the distinction between references and objects in C++ (an idiom not present in the other languages) and treats garbage collection as something which all 'sophisticated' languages must have, without referring to any of thedrawbacks. (I've just been bitten by Java's garbage collection system, where I ran out of database resources long before I ran out of memory; the problem was easily fixed, but I happen to prefer the C++ (and Perl) way where resources can released the moment they are no longer used via predictable destructors)
A book worthy of a read by almost anyone in OO development; although I would like to see more C++ specific knowledge added to produce more balance.