There is no doubt that the best book to learn Java for beginners is indeed Head First Java, 2nd Edition. It's interesting, informative and yet easy to read, which is what a beginner wants. The only drawback of this book is that there is no 3rd Edition available. Java has moved a long way since 2nd edition of this book was released. Yes, the core of the Java programming language is not changed much and information given in this book is still relevant and sufficient for anyone who wants to learn Java programming, but an up to date book comprising changes introduced in Java 7 and Java 8 would have been much appreciated. I was hoping for Head First Java 3rd Edition when Java 8 was launched last year, but no update yet. The changes introduced in Java 8 does demand a new edition of the book, but that is for advanced level.
For a beginner, it's important to learn basics of Java before diving into lambda expression and other stuff. Head first Java will give you a head start in Java programming by first explaining What is Java, What is Java's competitive advantage over another popular programming language e.g. C, C++ or Python and What is the best way to learn Java. Once you start reading this book, you will learn very quickly.
Why is Head First Java the best book to learn Java Programming?
Somebody will definitely ask, why I consider Head First Java as the best book? Did I read this book before recommending? Did I have read any other book to say that Head First Java is the best compared to others? Can they trust my words on Head First Java? Well, Yes I have read Head First Java, not once but twice and thrice. I do read it even now after having 9 years of working experience in Java when I want to refresh some concept. I consider Head First Java, 2nd edition best because of following reasons:
The Head First style of teaching which is full of diagrams, images, and characters.
If you know a picture is worth thousand words, to give you an example from Head First Java book, you might know that abstract methods are methods without body, they have just declaration and how they explain it by just showing a human head without body :)
The content of the book is really great and easy to digest. As a beginner, you would hate reading boring subjective content which is bookish and not in conversational style. Head First Java is not a book, its a teacher with full of conversation.
Head First Java is best because it contains lots of quizzes, fill in the blanks, matching exercise, which forces your mind to work. This helps to retain the knowledge you have acquired by reading book.
Head First Java is full of good examples, which is very important from a beginners point of view. Remember you will not learn by just reading the book, you will learn only if you do examples and exercises given in the book.
Authors, Bert Bates, and Kathy Sierra are respectable and are an authority in the field of Java programming language. They have also authored several other books including SCJP guides which are some of the most recommended books for Java developer looking to get certified.
Any other Good Book to Learn Java?
I am sure these reasons are enough to explain why I think Head First Java is the best book for beginners or anyone who wants to learn Java. On a similar note, since everyone has different taste and some may not like comic book style of Head First Java and look for a traditional style of Java programming book to learn, they can try Core Java, Volume 1 and 2 by Cay S. Horstmann. That book is also a gem and gives comprehensive knowledge of Java programming in an easy way. An author is very renowned and I love his writing style, you won't feel bored while reading his book.
No matter which book you choose to learn Java programming, you should write Java programs, use an IDE like Eclipse or Netbeans because busy developers learn faster than those who just read books.
All the best and don't forget to come back here if you face any problem while learning Java :)
Update 7th February 2016
Cay S. Horstmann, the author of popular Java 8 book, Java SE 8 for Really Impatient and the classic two-volume introduction of Java programming language has come up with another masterpiece to teach core Java, including Java SE 8. The Core Java for the Impatient 1st Edition by Cay S. Horstmann is a complete but concise guide to Java SE 8. It covers all important material of Java programming language, but it's presented in small chunks organized for quick access and easy understanding. I am not sure if it can replace Head First Java but at the moment, it certainly look the best and most updated book to learn Java for beginners.
P.S. If you are someone who wants to learn from more than one author and looking for a comprehensive guide on the particular topic, then check my post about 9 books Every Java Developer Should Read. You will find books about multi-threading, Java Generics and Collections, Design Pattern and several other important topics important for Java developers.
For a beginner, it's important to learn basics of Java before diving into lambda expression and other stuff. Head first Java will give you a head start in Java programming by first explaining What is Java, What is Java's competitive advantage over another popular programming language e.g. C, C++ or Python and What is the best way to learn Java. Once you start reading this book, you will learn very quickly.
Update 7th February 2016
Cay S. Horstmann, the author of popular Java 8 book, Java SE 8 for Really Impatient and the classic two-volume introduction of Java programming language has come up with another masterpiece to teach core Java, including Java SE 8. The Core Java for the Impatient 1st Edition by Cay S. Horstmann is a complete but concise guide to Java SE 8. It covers all important material of Java programming language, but it's presented in small chunks organized for quick access and easy understanding. I am not sure if it can replace Head First Java but at the moment, it certainly look the best and most updated book to learn Java for beginners.
P.S. If you are someone who wants to learn from more than one author and looking for a comprehensive guide on the particular topic, then check my post about 9 books Every Java Developer Should Read. You will find books about multi-threading, Java Generics and Collections, Design Pattern and several other important topics important for Java developers.
No comments:
Post a Comment