Rating: - Waaaaaaay too fast....
I've been learning Java for half a year now, and I found this book to be going way to fast. Chapters 1 - 3, covers somewhat complex concepts such as multi-threading, interfaces and policy files. But only in chapter 4 do they explain the primitive types.
This is not a tutorial for beginners. You have to know considerably amount of Java before you can fully understand all the concepts in this book. The good thing is that they jump into OOP immediately, and explaining it very thoroughly.
My last bad point about this book is that when they give you an example, usually about 2 pages long, and you have about 15% of an idea of what's going on. Fortunately, they do provide an explanation, however it's usually about 15 pages long. The examples are way too complicated for chapter 1 - 3.
The language is very technical, but it seems easy enough to understand when you think carefully about it. Not a horrible, but also not too good of a book.
Rating: - Highly Suggest this book!
I fell in love with this book from the start. I was tired of programming command line c++, and I dont feel ready for GUI programming in c++ just yet. I was looking for a book that would introduce gui programming. This book did just that. the first chapter introduces GUI programming from the start with a hello Java program that only spans about 10 lines! And , for being a beginning Java programmer, I have to say GUI programming in java is quite trivial, the way it should be.
I will definitely advise using this book with a refrence book like Java How to Program, 7th Edition by Harvey M. Deitel and Paul J. Deitel . Also if you havent done any c++ before but want to grasp OO design , this book will be extremely fundamental----> The Object-Oriented Thought Process (3rd Edition) . Also , for the future software developer, I highly reccoment UML distilled or any UML book , You should never start programming without laying out a plan of attack first . :D , any way buy this book its great to accompany any java books you have.
Rating: - A great book with a misleading title
I've been programming in Java for the last year and half, and Learning Java is the book I've been turning to most after picking up the rudiments from other sources. This 900+ page book is great for a reference on almost any Java topic. It is well written, and the authors generally do a very good job cutting through to the important aspects of each topic.
Learning Java is NOT, as other reviewers here have pointed out, a good choice for a first book on Java (unless, perhaps, one is already an experienced object-oriented programmer). This is not to say it's overly technical - just that there are better books for the purpose of learning Java as something new. For beginners I'd recommend Head First Java as the best single book.
As a deskside reference for Java topics, I find Learning Java more useful than Java in a Nutshell (Flanagan), Thinking In Java (Eckel), or Just Java (van der Linden). These other books each have their own strengths, but Learning Java has been a most worthwhile addition to my group of core Java books. I suspect that Learning Java would have a much wider following if only it had a different title.
Rating: - Disappointing for an O'Reilly book
One expects a certain amount of intellectual gravity and reliability with the O'Reilly "animal series" books on technical subjects. I bought the book based solely on the fact that I needed an intro book on Java, and have never been disappointed with an O'Reilly book. Well, now I have been disappointed.
The book starts very well. The first two chapters take you through an engaging tutorial -- taking one idea in Java at a time, and slowly building up. However, after those first two chapters, the tutorial goes away and the book gets very dry. The organization of the content is not well thought-out for a beginner's book. Just for a couple of fairly trivial examples, the authors spend a few pages on the "assert" keyword before they explain arrays (a very fundamental concept). As a comparison, "Head First Java" (highly recommended, by the way) doesn't mention "assert" until an appendix, and only as one of the "Top Ten Things That Didn't Make it into The Book" list. Also, there is a wasted page on optimization and performance in chapter 6, which is about Subclassing and Inheritance. It would have been better for them to focus on getting code running, and doing what it's supposed to do, and leave optimization for an Appendix.
Good points of the book include a lot of detailed explanation on some of the Java API, including Swing and JavaBeans, as well as explanations on how to use the two most popular IDEs: NetBeans and Eclipse. RMI and the natural relationship between Java and the web are covered well. And the 3rd edition of the book has been expanded to cover topics new in Java 5.
The accompanying CD contains Eclipse, Tomcat, NetBeans, Ant, and other utilities -- all of which (except for scripting language written by one of the authors) are readily available from the web. So the CD doesn't really contain anything that you couldn't get by trolling the web for a half-hour and doing a few hundred MB of downloads. (Plus, getting the tools from the web ensures that you get the most up-to-date versions...)
So, this book is another reference work, another way to explain Java, but it's nowhere near the best.
Rating: - Java Review
The book is a great addition to my library. While it didn't get all my questions answered, it was very helpful.
|