Thursday, February 16, 2017

Top 5 Core Java Books for Beginners - Learn Best of Lot

I have shared a lot of books related to Java and related technologies in the past e.g. Spring, Hibernate, JVM internals and performance tuning, multi-threading and concurrency, design patterns, data structure and algorithms etc, but I haven't shared core Java books for beginners yet. Even though I have mentioned a couple of popular titles every now and then, I really didn't have a good compilation of essential core Java books for beginners. Since Java is one of the most popular programming languages and has very good job prospect it has became a choice of programming language to start learning coding and application development, it makes sense to start well with core Java. This article contains books which will teach you how to code using Java programming language.

In the gone by era, when C and C++ ruled the academics and was the first languages Engineers and Programmer used to learn how to code, we usually have some good recommendations to start with e.g. The C Programming Language by Dennis Ritchie himself.

The Head First Java book serves the same purpose for many years for Java programmers, but does it still relevant in 2017? Particularly in the era of Java 8? Well, we'll find about that in this article shortly.

More importantly, I have shared 5 of the best core Java books for beginners. I have chosen these books on three parameters, first readability, second examples, and third content. These books are great for someone who is new to Java but also good for someone who has 1 to 2 years of Java experience and wants to fill the gaps in his learning.

5 Best Books to Learn Core Java for Beginners

Here is my collection of some of the best books to learn core Java, especially for beginners who have no or very little experience in programming and Java. These books will not only teach you fundamentals of Java programming language, but also many important classes from Java API e.g. String, Java Collection Framework, Thread, Java Executor Framework, Java IO, Java Networking etc.

This list of books is also useful for anyone who has only learned Java in school and colleges or have a couple of experience in programming. These will help you to fill the gaps in your understanding of Java language and it's rich API.

1. Core Java For the Impatient
One thing which I have found about beginners is that they are slightly impatient i.e. they want to learn things quickly. Even myself, when I start with something absolutely new e.g. playing a new musical instrument, I want to learn scales, chords quickly to play full songs. That's why I put the Core Java for the Impatient at first place when it comes to recommending a core Java book to beginners. As the name suggests, it explains essential core Java concepts, leaving out less important details and including more recent details e.g Java 8 lambda expressions and Streams. In 2017, in the era of Java 8, this is probably the best Java book for beginners, but if you want a comprehensive coverage, Core Java Volume 1 and 2 by the same author provides that.

Top 5 Core Java Books for Beginners

2. Head First Java
Whenever I mention Head First Java, the first question comes to anyone's mind is whether this book is still relevant in the 2017 or not. Since the book is not updated for Java SE 8, it is clearly not the most up-to-date Java books for beginners, but when it comes to chose books for beginners, the learning style plays an important role, and Head First books score big there.

Another thing, which works in favor of Head First Java is that Java fundamentals haven't been changed a lot in last decade or two. So, once you build the fundamental you can alway update yourself by reading any decent Java 8 books.

Best Core Java Books for Beginners

In short, Head First Java is not the best core Java book in 2017 but still a good one for beginners. I really hope that author and publication house realized that it's time to update the book for Java 8 and make it great again.

3. Java: A Beginner's Guide, 6th Edition
If you are absolutely new to the world of programming and learn how to code by using Java programming language then this is the book you should choose. The book starts from zero and then builds from there. You will find lots of easy to follow examples accompanied with solid theory and explanation. In short, It is straightforward and fantastic books for programmers with no coding experience. The best part of the book is that it has been kept up-to-date (at least thru Java 8) and a new edition Java: A Beginner's Guide, 7th Edition is also coming shortly. When you purchase the book, make sure you buy paperback and ebook, this will give you the PDF version of the book, which you can read while traveling. Kindle version is also available.

Top 5 Books to Learn Core Java

4. Core Java, Volume 1 and 2 by Cay S. Horstmann
The great Cay S. Horstmann is one of my favorite author for Java book. I really love the way Cay explains things and put so much content in so little word. He not just explains concepts but also explains what to do and what not to do. If you are coming from C and C++ background then this book has an additional incentive for you. It explains and compares C++ features with relevant Java features e.g. constructors, templates, and generics etc. You will find relevant notes all around about similar C++ features, this makes it perhaps the best core Java books for C/C++ programmers.

Core Java Books for Beginners and Experienced

5. Java: How to Program by Deitel and Deitel
This is another great core Java book for beginners. It effectively combined what Cay S. Horstmann has done in two volumes of Core Java, which we have discussed in the last section. I love this book for its examples, programming error warning messages and easy to understand languages. It is also one of the most comprehensive books written on Java, covering even advanced topics like JDBC, AWT, Swing etc.

That's all about some of the best core Java books for beginners. If you are starting with Java programming then this book will help you to understand fundamental of core Java better. I strongly suggest to pick one of the books from the list and complete it twice to get most of them.

Once you have gone through a book twice, you understand all the basics of Java and its brilliant API. After that, you can choose more books to enhance your Java language and API knowledge, you don't need to read them word for word, you can skim chapters and details which you already know.

Since Java is vast and it's not enough to just know the basics, once you went through fundamentals and understand Java, you can explore the following list of books to truly become an expert Java programmers. Each list contains books to make you expert in that particular area e.g. concurrency, JVM internals, and performance tuning, unit testing, Spring, Hibernate etc.

This is list is particularly useful for experienced and intermediate Java programmers with a couple of years of real world coding experience in Java.

Further Reading

Thanks for reading this article, if you have any suggestions, feel free to drop comments. If you like this article and recommended books, please share with your friends and colleagues.


Nicko Olimp said...

The article about Java 8 books contains only top 3, not 5 books.

Javin Paul said...

Hello Nicko, the article about Java 8 books was not about top 5 but just some of the best Java 8 books. Btw, if you want more books on Java 8 and functional programming then you can check out this article.

Nicko Olimp said...

Yes, but the link in this article says "Top 5" :)

Post a Comment