Paperback: 1224 pages
Publisher: Pearson; 4 edition (February 15, 2016)
Product Dimensions: 7.3 x 1.5 x 9.1 inches
Shipping Weight: 3.7 pounds (View shipping rates and policies)
Average Customer Review: 4.4 out of 5 stars See all reviews (82 customer reviews)
Best Sellers Rank: #9,598 in Books (See Top 100 in Books) #5 in Books > Computers & Technology > Programming > Languages & Tools > Java #32 in Books > Textbooks > Computer Science > Programming Languages #2812 in Books > Reference
The dominant approach to teaching Java is to start with objects as early as possible - the object first approach. If this is what you want, then this is not the right book. However, I believe that a growing number of people, myself included, have come to believe that object first doesn't work. Since OO is primarily a design and organization approach for building large systems it typically does not make sense to students trying to do one or two page introductory projects. In addition, the time taken in trying to explain objects comes out of time that would have been spent in learning programming basics such as loops, arrays, etc. The result is too many students that can't write good procedural code, as well as never grasping object.Due to this problem, I have chosen to organize my classes to begin with a procedural style of programming (focused on loops and arrays) and introduce OO at the beginning of the second semester. One of my frustrations has been a lack of supporting material for this approach, particularly among introductory Java textbooks.This book solves this problem for me. It introduces concepts in almost exactly the order I have decided to use in my courses. The book is well written. It has a modern organization in terms of things like sidebars and its graphic design without going overboard and trying to compete with MTV the way the Head First series does, or by putting in a bunch of expensive color pictures that have nothing to do with the subject as many current textbooks do. In short, the book design matches its subtitle of being "a back to basics approach".The authors have chosen to avoid showing a specific IDE and limit graphics to an optional chapter. I approve of both of these choices.
As a college senior, I've had to read many textbooks; some painful, some not. This book is by far one of the best I have used. In fact, while I have been using 's review services for my own purchases for many years, I haven't felt the compulsion to write a review. This is the first book to compel me to do so. It's an excellent book with few typos and a conversational style.If you are just beginning to learn Java and haven't had any experience with OOP (Object Oriented Programming), I believe this book takes the right approach. It's a very up-to-date treatment of the basics of the language, and like the cover implies, builds the wall brick-by-brick. You'll learn the components of Java in an order that is easy to follow, the progression to more advanced topics being just about as natural as possible.One idea that this book emphasized that others I have read did not (very well), is handling common programing errors. From the get-go, the authors stress how important it is to catch your programming errors as you go along, encouraging the construction of more robust (although still very rudimentary) programs.In my opinion, this book has a very "let's teach Java how it is practiced" approach. It's very, very practical in the examples it uses and the problems it gives in the back of each chapter. There is also a case study at the end of each chapter that is unique to that chapter, covering the concepts highlighted.For Students: If you've already had some experience in programming Java, this text might be a bit inadequate because it emphasizes the basics -- perhaps it would be a good reference text (although I'd encourage using Sun's online service). If you're brand new to the language, this is the book to get.