|
1.0 out of 5 stars
The real title is "Java Essentials for C and C++ Bashing", 29 Jul 1997
By A Customer
This book should have been titled "Java Essentials for C and C++ Bashing". The author starts in the introduction with "...think of this book as a superconducting supercollider [which] takes C/C++, positions it in a bubble chamber, and then hurls Java at it....".
I expected to see an insightful guide showing the similarities between C++ and Java - so as to instruct the C++ programmer's intuition to make Java obvious and natural.
I saw an author who learned C++ without making the paradigm shift to objects - in the author's own words "C++ enables you to define and create objects, but that's as far as the language and its libraries go". The author literally sees C++ as no more than C with Classes - from the introduction "The early chapters show you the paradigm shifts you'll make when programming in Java rather than in C and C++". Had the author read Stroustrup's book "The Design and Evolution of C++", this book on Java might have turned out better.
Instead of using C++ as an aid by showing the similarities to Java, the author seeks to maximize the differences. For example, instead of comparing Java object variables to the similar concept of C++ reference variables, the author compares them to C++ pointer variables. In the "Hello, World!" example, Java's main() is declared to be superior to that of C/C++. In another example, Java code that is supposedly equivalent to some C++ code is actually enhanced in order to show Java's "ease of development" for subsequently integrating a graphics interface. There is also a "my libraries are better than your libraries" game - in one example the author says "The major difference is, of course, that C++ does not define a base class called Object in the C++ libraries".
To the book's credit, it does spend some time on Java's Graphics and Web capabilities, as do most of the newer Java books. Even so, the author points out what he sees as assumed deficiencies in C and C++ (at he beginning of chapter 6 [Text-Based Applications] the author says "Chapters 7 [Graphical Applications] and 8 [Applets on the Web] are based on graphical user interfaces, so they don't have C or C++ examples that correspond directly").
I cannot say that this author is a Java evangelist since that would imply that he had a good understanding of how Java really compares to other object oriented languages. Instead, he will have to be relegated to the Java bigot heap.
Whatever else this book is, it is not "...for C and C++ Programmers" - I have to recommend a NO BUY for this book.
|