Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Thinking in Java by Bruce Eckel (3rd edition)

 
Book Review Team
Bartender
Posts: 962
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
<pre>Author/s : Bruce Eckel
Publisher : Prentice-Hall
Category : Beginning Java
Review by : Junilu Lacar
Rating : 9 horseshoes
</pre>
This edition is updated for the Java JDK 1.4 and includes significant changes over the previous edition.
New and expanded discussions touch on assertions, I/O and new I/O, logging, JavaDoc comments, exception handling, JNLP and Webstart. The 2nd edition's chapter on distributed computing, which included EJBs, Servlets and JSPs, RMI, and JNDI, and the appendix on JNI are gone and moved to another book on Enterprise Java.
Staying abreast of current development practices, Eckel introduces brief discussions on using Ant for automated builds, and version control using CVS. He also puts more emphasis on unit testing, replacing comments and System.out.println statements from previous editions with code that uses his own unit testing framework in most of the book's sample code. The source code, which you can download from his website, also comes with Ant build files.
The CD that comes with the book contains a multimedia course called "Foundations for Java" which you should go through before reading the book. Unfortunately, the CD I got was damaged during shipping and I haven't received a replacement as of this writing.
One minor complaint is that the typeface in the code and tables are not very readable. In the tables, the number 0 looks like a lowercase o. Overall, I think Eckel did a good job in keeping the book up-to-date and relevant to the needs of beginning to intermediate Java programmers who would benefit from this book.


More info at Amazon.com
More info at Amazon.co.uk
Previous discussion
 
Junilu Lacar
Bartender
Posts: 7569
52
Android Eclipse IDE IntelliJ IDE Java Linux Mac Scala Spring Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Note: This book won the 2002 Jolt Award in the Technical Books category.
 
Ziming Lan
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi, I just spent money to buy the 4th editon of this book due to a friend recommendation after I have read Head First Java. But rather than find it easy, I find it really hard to read,

The font itself is well very big and ugly on paper (Georgia) and the style of writing...I don't know if it's just me but I find it hard to comprehend what he is trying to say. However my friend asked me to just bare with the book (he says it's very dry too). Since I have already bought the book, I decided to bare with it and force myself to like it but with no success so far, can anyone share their tips on how to enjoy this book well? The book can't be bad if people worldwide are rating it highly.

Coming from a python programming background.
 
Ninad Kulkarni
Ranch Hand
Posts: 802
Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ziming wrote:I find it really hard to read

Hi Ziming,
Its an excellent book. Read book from first page understand the concept and apply that in the code by creating your own code then you will really enjoy the book.
This is one of the best book to understand Java.
 
Rahul Sudip Bose
Ranch Hand
Posts: 637
Eclipse IDE Firefox Browser Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ninad Kulkarni wrote:
Its an excellent book. Read book from first page understand the concept and apply that in the code by creating your own code then you will really enjoy the book.
This is one of the best book to understand Java.


Was this the first book of java you used as a beginner ?
 
Ninad Kulkarni
Ranch Hand
Posts: 802
Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Rahul Sudip Bose wrote:Was this the first book of java you used as a beginner ?

Yes, But would like to say that got tons of help from JavaRanch members and I got information about the book from JavaRanch forum.
Finally want to say JavaRanch members are really great people.
 
Ziming Lan
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
How do you guys deal with the starting chapters especially when he talk about garbage collection, and technical stuffs in deep detail that probably only a computer science student will understand? 1 problem I often find is, he suddenly goes too in detail about things technically and got me lost. It makes me wonder if this is a begineer book or should I study more aspects of computer science first before coming back to this book.
 
Rahul Sudip Bose
Ranch Hand
Posts: 637
Eclipse IDE Firefox Browser Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ziming Lan wrote:How do you guys deal with the starting chapters especially when he talk about garbage collection, and technical stuffs in deep detail that probably only a computer science student will understand? 1 problem I often find is, he suddenly goes too in detail about things technically and got me lost. It makes me wonder if this is a begineer book or should I study more aspects of computer science first before coming back to this book.


That is the reason why i asked ninad a question. I did not read that book after a few pages. In fact, i become irritated when people recommend books like these to beginners (i am a beginner myself ) . why do they do it ? . One minor, but bad aspect of that book (4e) is that the lines of code are not numbered. The author does not give a step by step explanation of how the code works, which is needed by beginners. Hence, there was no need for line numbering.
Alternatives are head first java , how to program (java , c++ etc) , absolute java. I have seen "experienced people" on the forum recommend 'core java 1' (etc) by cay horstmann to "beginners" . Look at the preface of that book. Even the author does not recommend it to beginners. So how do people insist that its good for newbies ?
TIJ may be a good book BUT IT IS NOT FOR BEGINNERS..

PS : I spent a long time skimming over the wrong recommendations until i found books that works for me.
good luck

 
Ninad Kulkarni
Ranch Hand
Posts: 802
Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
@Ziming
Thinking in Java is one of the best book. You read the book from first chapter understand concept step by step using code. Don't read code but try to write & execute the code given in book.
If you have any doubt ask question in any one of the Java forums of JavaRanch myself or someone here will help you to clear your doubts. Read Java beginners FAQ which is helpful to beginner. In such way you go through book.

@Rahul
Thinking in Java may be a good book BUT IT IS NOT FOR BEGINNERS

When I was beginner in Java I read Thinking in Java 4th Edition and my concepts got cleared from this book. Not only I read the book but also I tried to write & execute code given in book at same time. Whenever I found doubts I read topics posted on JavaRanch forums or if I didn't find anything in Java forums then I asked doubts in JavaRanch forums and one of the members from JavaRanch here cleared my doubts. This forum helped me a lot to understand concepts in Java.
 
Rahul Sudip Bose
Ranch Hand
Posts: 637
Eclipse IDE Firefox Browser Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

@Ninad

When I was beginner in Java I read Thinking in Java 4th Edition and my concepts got cleared from this book. Not only I read the book but also I tried to write & execute code given in book at same time. Whenever I found doubts I read topics posted on JavaRanch forums or if I didn't find anything in Java forums then I asked doubts in JavaRanch forums and one of the members from JavaRanch here cleared my doubts. This forum helped me a lot to understand concepts in Java.


Perhaps i am not as intelligent as you , so i could not understand such books as a beginner...

When i say "good book for beginner" i meant how good it is for "self-study" and how much detail is given in the explanation of each code. No book will allow 100% self study, you have to refer other sources too. But some books reduce your dependence on external help - HF, Deitel (this one in particular), Savitch etc. The problem with TIJ (and similar books) is that one might require frequent help from others - based on my experience and my CS engineering friends.

Was java your 1st language ? Did you have any experience in coding (and/or knowledge of CS) before you started learning java ?

regards
rb


PS : If you know some kid who is "beginning programming/CS" give him TIJ first...then show him Deitel...he will tell you the difference.
 
Ninad Kulkarni
Ranch Hand
Posts: 802
Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
@ Rahul

Perhaps i am not as intelligent as you , so i could not understand such books as a beginner...
I am same as like you there is nothing great to say intelligent. All the members from JavaRanch staff are intelligent people. They are genius.
As I already told you read the book understand the concept and write your own code if you find any doubts while learning post your doubts on JavaRanch you will learn a lot.
As a beginner you can do it only thing you need to do is put efforts from your side.
I am here to help you but currently I could not able to post or ask questions on JavaRanch due to lot of work. When work will over I will surely come here.


When i say "good book for beginner" i meant how good it is for "self-study" and how much detail is given in the explanation of each code. No book will allow 100% self study, you have to refer other sources too. But some books reduce your dependence on external help - HF, Deitel (this one in particular), Savitch etc. The problem with TIJ (and similar books) is that one might require frequent help from others - based on my experience and my CS engineering friends.

I know about Thinking in Java from JavaRanch and got frequent help from this forum.


Was java your 1st language ?
I would say No,
My first language was assembly language programming for 8085/8086 microprocessor, second one was embedded programming for 8051 microcontroller, third one was C/C++ programming and then Java programming.

Did you have any experience in coding (and/or knowledge of CS) before you started learning java ?
Yes


 
Ming Wilson
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I find it interesting I cannot find this book on Safari.. Infact I can't find any book the Bruce Eckel authored.. any reasons why?
 
Rahul Sudip Bose
Ranch Hand
Posts: 637
Eclipse IDE Firefox Browser Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ming Wilson wrote:I find it interesting I cannot find this book on Safari.. Infact I can't find any book the Bruce Eckel authored.. any reasons why?


The electronic version is free, you can google it or try the links at http://mindview.net/Books/TIJ/DownloadSites

 
Neeraj Rawat
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Even I couldnt understand why people refer this to beginners I read thinking in c++ few pages and dont think so its for beginners however any other book any1 can refer for complete beginners.I only know a bit of c and c++ any good book for Java newbie
 
Campbell Ritchie
Sheriff
Pie
Posts: 49733
69
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Rahul Sudip Bose wrote: . . . The electronic version is free . . .
That's only the 3rd edition.

I posted something about books about 15 minutes ago. Try here.
 
Arun Giridharan
Ranch Hand
Posts: 290
Debian Fedora Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The Worst Font(Even Author can't read from this book ,horrible). That's why BunkHouse have not rated the 4th edition.
 
Torsten Oppermann
Ranch Hand
Posts: 62
Android Java PHP
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
this is my favourite Book on Java SE by far. And the font is really good for my taste

 
Paulo DeLimma
Greenhorn
Posts: 9
C++ Eclipse IDE Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I've been reading this book for some time and it's been worthy to me, as a Java beginner with some background in C++. But I agree with Rahul that it's not ideal for total beginners in programming. I think Bruce would agree with that too: there's a "Prerequisites" section in the introductory chapter where he says "the book assumes that you have some programming familiarity".

I find his explanations quite delightful, but maybe that's because I'm familiar to OOP. I had already taken a look at Deitel's How to Program, but found it a bit long-winded. The code examples in TIJ are pretty objective and focused on the language features (although the chapters are organized around programming problems), so it illustrates with detail how it works and what wouldn't work.

My only complaint is that some of the exercises are a bit silly, like "thy to do this and verify it doesn't work". As you understand the principles, I don't think you need to make a mistake on purpose in order to fix it in your mind.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic