countdown boutiques-francophones Learn more scflyout Furniture All-New Kindle Music Deals Store sports Tools

Customer Reviews

4.2 out of 5 stars
237
4.2 out of 5 stars
Format: Paperback|Change
Price:$52.24+ Free shipping with Amazon Prime
Your rating(Clear)Rate this item


There was a problem filtering reviews right now. Please try again later.

Showing 1-10 of 17 reviews(2 star). Show all reviews
on June 9, 1999
I read Eckel's "Thinking in C++" carefully over a period of many months and loved it. Alas, when I began reading "Thinking in Java" I was both appalled and bored. Why, oh why, doesn't Eckel put lines numbers on the left of his Java source code listings. Laziness or arrogance, the end result is the same: source code that is made needlessly harder to read than necessary. Why on earth does Eckel use such boring, uninteresting fonts in this book? I can't think of a defensible reason for this other than that it's the exact same font scheme used in his "Thinking in C++". Why in G-d's name is "Thinking in Java" so long? I cannot imagine who has time to read such a long book. It is more than 50% longer then "Thinking in C++". So long that it is difficult to carry it in the train and read during rush hour! So long that it could take literally several months to read cover to cover. And yet for all its length, Eckel continues his (stupid) tradition of not including the answers or results of his source code examples. To actually type in every one of his examples would double the time required to read his book. What planet is that man from? What is he thinking? Furthermore, I found that by the time I was reading, say, page 500 of "Thinking in Java" I had long ago forgotten what he had said way, way back on page 100. Imagine, months later, reading page 950, trying to remember what he said on page 500! Eckel's thinking has not in my opinion changed between his writing "Thinking in Java" versus "Thinking in C++". I think he wrote the Java book with the same mindset he had when he wrote the C++ book. I personally feel that the time required to read Eckel's Java book can much more profitably be spent reading several other excellent books, including the excellent new book, "Java 2 Exam Cram" which I just finished reading and recommend.
0Comment|Was this review helpful to you?YesNoReport abuse
on August 12, 2001
This book should come with a warning: B.S. in Computer Science required. On a positive note, TIJ has interested me in improving upon my education. However, if you don't have the education, or at least a solid grounding in computer architecture, OOP, and Data Structures, you'll glean very little from this deceptively weighty tome.
0Comment| One person found this helpful. Was this review helpful to you?YesNoReport abuse
on March 9, 2002
What are these people thinking? I get the impression sometimes that all you need to do to get a five-star rating is number all the pages. This is not a terrible book, but it's definitely not five, or even three, star material. I also have Horton's "Beginning Java 2" and Deitel's "Java - How to Program". I don't think these are five-star books either, but they're both much better than "Thinking in Java".
Several things hurt this book. One is the author's reliance on comparing concepts to C++ - great if you know C++, but I firmly believe you don't need that to learn java, IF the material is presented correctly. Neither Horton nor Deitel assume any exposure to C++.
Another failure is in the author's code examples. He is generous with these, as is expected, but his descriptions and explanations of his examples are insufficient in many cases. No problem with easy examples, but the reader is left to struggle when more complex examples are presented. It seems like the longer the example, the shorter the explanation. Both Horton and Deitel offer very comprehensive explanations of their examples. Deitel even goes so far as to number every single line of code, and explain virtually every line of code, number by number.
Compounding this is the almost complete lack of diagrams and graphics. For example, the author rambles on while trying to explain the hierarchy of the Exception class, when a simple tree diagram (as most books use) and brief explanation would have been so much clearer. In addition, there are no graphics of what his GUI code examples produce. If you're trying to work through one of the author's GUI examples, you have no way of knowing with any certainty what it's supposed to look like, because the author doesn't include any graphics to show you. Same problem with his examples that generate text output to a DOS window - no pictures to show you what the output should look like. Both Horton and Deitel include graphics to show what the code will produce. Also with regards to his GUI coverage, the author treats layout managers much too lightly and blows off GridBagLayout completely, essentially saying it's too complex for him to address and that you should instead look to a Swing book for guidance. Both Horton and Deitel address layout managers, including GridBagLayout, without problem.
If you were to compare the TOC of the three books, you might think "Thinking in Java" had the edge, with it's coverage of beans, JNI, JSPs, servlets, RMI, CORBA, and JDBC. However, their coverage is little more than a quick summary followed by recommendations to seek out other books on the respective topics.
In summary, this book is not a complete waste, and I do use it to complement my others. It's single greatest redeeming quality is that, technically, it's free. I'd recommend going to bruceeckel.com and downloading the text. Review that and then decide if you want to buy the hardcopy.
0Comment|Was this review helpful to you?YesNoReport abuse
on March 9, 2002
What are these people thinking? I get the impression sometimes that all you need to do to get a five-star rating is number all the pages. This is not a terrible book, but it's definitely not five, or even three, star material. I also have Horton's "Beginning Java 2" and Deitel's "Java - How to Program". I don't think these are five-star books either, but they're both much better than "Thinking in Java".
Several things hurt this book. One is the author's reliance on comparing concepts to C++ - great if you know C++, but I firmly believe you don't need that to learn java, IF the material is presented correctly. Neither Horton nor Deitel assume any exposure to C++.
Another failure is in the author's code examples. He is generous with these, as is expected, but his descriptions and explanations of his examples are insufficient in many cases. No problem with easy examples, but the reader is left to struggle when more complex examples are presented. It seems like the longer the example, the shorter the explanation. Both Horton and Deitel offer very comprehensive explanations of their examples. Deitel even goes so far as to number every single line of code, and explain virtually every line of code, number by number.
Compounding this is the almost complete lack of diagrams and graphics. For example, the author rambles on while trying to explain the hierarchy of the Exception class, when a simple tree diagram (as most books use) and brief explanation would have been so much clearer. In addition, there are no graphics of what his GUI code examples produce. If you're trying to work through one of the author's GUI examples, you have no way of knowing with any certainty what it's supposed to look like, because the author doesn't include any graphics to show you. Same problem with his examples that generate text output to a DOS window - no pictures to show you what the output should look like. Both Horton and Deitel include graphics to show what the code will produce. Also with regards to his GUI coverage, the author treats layout managers much too lightly and blows off GridBagLayout completely, essentially saying it's too complex for him to address and that you should instead look to a Swing book for guidance. Both Horton and Deitel address layout managers, including GridBagLayout, without problem.
If you were to compare the TOC of the three books, you might think "Thinking in Java" had the edge, with it's coverage of beans, JNI, JSPs, servlets, RMI, CORBA, and JDBC. However, their coverage is little more than a quick summary followed by recommendations to seek out other books on the respective topics.
In summary, this book is not a complete waste, and I do use it to complement my others. It's single greatest redeeming quality is that, technically, it's free. I'd recommend going to bruceeckel.com and downloading the text. Review that and then decide if you want to buy the hardcopy.
0Comment|Was this review helpful to you?YesNoReport abuse
on April 24, 2001
I was extremely disappointed in this book after reading all of the strong reviews. My main complaints come down to two major areas: the excessive use of sample code and the poor choice and grouping of contents.
First, many of the major ideas are presented in blocks of sample code. At first, this is good, because the samples are short and you are just seeing the basics. However, this soon becomes a very bad thing. Often, key new pieces are buried in a long sample program, most of which is boilerplate repeated from the previous example. You often have to read through a couple of pages of code to see one small new snippet.
To make matters worse, the relevant new sections in the sample code are not highlighted from the surrounding old stuff. And sometimes they only appear in the example code and are not mentioned in the book's text. It is just too hard to see the important parts.
Additionally, some of the code examples are almost completely pointless. For example, when talking about method overloading, the book contains about four pages of code with variation after variation of the same 1-line function just varying the type being passed in. This is silly. Showing every single permutation is ridiculous! Plus, the book never includes the output of any of these programs. Often, the whole point of the example cannot be determined without looking at the output, and the book doesn't reproduce that, nor does it explicitly state the point of the example.
The second problem area is the organization of material. There is a lot to cover and it makes sense to defer less important details. Unfortunately, the book just throws in tons of junk! For example, in the 85 page I/O chapter, the book makes diversions into gzipped I/O streams and string tokenizing. Now these may be useful utilities, but there are so many basic elements to cover, I really wished the chapter stuck to the core.
Ironically, in the next chapter on Class objects and RTTI. The author glosses over almost all of the details (except for a few you can glean only by reading the code snippets). I'd rather defer the stream tokenization until later and have a page or two of explicit description of Class objects.
Argh! Then we get to the Windows and Applets chapter which begins to describe JFC and Swing and various widgets and layout schemes, and manages to go the entire chapter without a single picture or diagram of what to expect!
I found this book to be frustrating, not explicit enough for a programming book, and not organized well for an introduction to Java.
0Comment|Was this review helpful to you?YesNoReport abuse
on December 7, 1998
I knew C and C++ so I bought this book. No beginner could ever understand the first chapters. He starts with the most complicated C++ concepts and then moves to the code. You don't see a program until the 5th chapter. No creativity (all in black and white, NO color). The only good chapter is the chapter on buttons,text boxes, etc. If I didn't already know C++ I would have been completely clueless. Do not try to use as a teaching textbook; this book is for reference only.
0Comment|Was this review helpful to you?YesNoReport abuse
on October 4, 1999
Before I bought this book I read many of the reviews. Many were bad, Many were good. I decided it's worth the risk. It's not really a bad book, but definetly not a good one, either. It's very difficult to read, the examples are the worst possible, perhaps, to illustrate the ideas presented. After reading almost half the book I gave up, and I'm going to buy another book.
0Comment|Was this review helpful to you?YesNoReport abuse
on November 9, 2001
I downloaded the TIJ book and started reading the first two chapters. Initially, I thought this was an excellent book. Bruce Eckel says that the solutions to the exercises are available online for a small fee. I was planning to purchase the solutions but when I went to his site, he says that he has the solutions for chapters 2 and 3 only and that he does not know when he can complete the solutions for the remaining chapters. Right there and then, I stopped reading the book. He misled the readers of his book. I was supposed to give him 5 stars for his good writing style but decided to give his book a net rating of 2 for lacking solutions to exercises.
0Comment|Was this review helpful to you?YesNoReport abuse
on September 5, 2001
While Eckel is certainly an expert in the realm of Java programming this book is certainly not appropriate for beginners to the Java language. I happen to agree with another reviewer that commented that the book requires a BS in Computer Science in order to read it. I teach Java at the college level and found the book to be too complex and tied up with too many details for anyone who wants to be a true student of beginning Java programming. The book is nice overall but at times difficult to read and follow.
0Comment|Was this review helpful to you?YesNoReport abuse
on July 2, 1999
This book is confusing and long winded. I had heard that this book would be good for someone with a C programming background. Not true. I think the author got caught-up in the competition to write the biggest book on a particular subject.
0Comment|Was this review helpful to you?YesNoReport abuse