Wednesday, January 2, 2019

Top 20 Books Java Programmers Can Read in 2019

Hello guys, Happy New Year 2019. We are already in New Year and while I am busy making my goals for 2019, I am also looking back on what I have done in the last year. One of the things which I would like to share with you guys is some of the books I have read in last year on Java and related technologies and will continue to read in 2019. This includes books on Modern Java, Spring, Hibernate, Object-oriented programming, Algorithms, Soft skills, Microservice, Groovy, Scala, Agile, and UML etc. If you haven't read them yet, you can very well read them this year, depending on what technologies and programming languages you are going to learn in 2019.

Btw, one of the first book to read in 2019 for Java programmers should still be the Effective Java 3rd Edition.  Even though, It's released last year and only covers changes on JDK 7, 8, and 9, it's still the best book to read on Java this year.

I know you might be thinking that Java 12 is due soon and we are talking about Java 9 but well, no book can cope with the 6-month cycle of Java releases and books like Effective Java never gets out-dated because of their time-tested advice and practices.

I have been waiting for this book ever since Java 8 was released so I am very excited to finally read in last year If you haven't read it yet then I suggest you read this as first thing in 2019, you will appreciate how much you have learned about coding in Modern Java using Lambdas, Stream, and Functional programming.

Even if you have read it once, I suggest you to read it again because most of us read books casually in first glance and miss a lot of important details, well at least do, so when I read it again, I always find something new and exciting which I haven't noticed in my previous read.

Anyway, let's see my list of top 20 books you can read in 2019, well that's a lot but I am sure you have read a couple of them already.




20 Books Java Programmer Should read in 2019

Here is my list of 20 books which you can read in 2019. As I have said, Effective Java 3rd Edition should be the first one you should read in 2019 but if you do get free time or decide to learn Java 11, Scala, Agile, or Algorithms then you can use this list to pick up a book or two.


1. Effective Java 3rd Edition
There should not be any surprise here, The Effective Java by Joshua Bloch is hands down best Java book ever. A definite must read the book for Java programmers of any level of experience. You will learn so much about Java and its API then you won't imagine.

The fact that Joshua Bloch himself is the author of several key Java classes and API e.g. java.lang and Java Collection framework itself is enough to read this book, but his style is also awesome.



You can read this book on a beach, or while traveling, or just at your desk. It's simply awesome. There is no doubt that you would emerge as better Java programmer after reading this book.

And the best thing is that a new edition of Effective Java is available now, which covers Java 7, 8, and 9. There can't be a better time to read this book.


 

2 Modern Java in Action
This is the new version of Manning's best selling Java 8 book, Java 8 in Action. The book is revised to cover new and exciting changes made in Java 9 and Java 10 and I am hoping that they will keep this up-to-date every year to include changes from newer Java releases like Java 11 and Java 12, but for now, this is the best book to learn Modern Java in 2019.


The book will teach you all the modern way to code in Java like lambdas, Stream, functional programming as well as reactive programming. Though, if you prefer online courses than books, I suggest you take a look at The Complete Java MasterClass course on Udemy, which was recently updated for Java 11.



3. Grokking Algorithms
This is another great book to read in 2019 to improve your understanding of Algorithms. Even though it's very short in terms of its coverage of algorithms and data structures but whatever is covered is very entertaining and useful. It gives a new life to the old concepts by co-relating with modern day examples e.g. how Facebook might store its users.
best Algorithm books for programmers


In short, one of the must-read books for beginners who want to learn Algorithms in 2019, btw, if you need more suggestions, check out my list of Algorithms books here.




4. Building Microservices: Designing Fine-Grained Systems
Everyone is talking about Microservices but what are they? What is the main benefit of Microservice architecture over monolithic one? This book answers all of those questions, I have to yet to finish the book so I am going to read it in 2019 as well.

best Microservices books for programmers




5. Hibernate Tips
This is one of the most useful Java books from last a couple of years written by fellow blogger Thorben Jenson. This book provides 70 practical tips on Hibernate. If you use Hibernate then these tips are good to fill your knowledge gaps and if you decide to learn Hibernate in 2019, you can use this book to give your learning a new dimension.

Best book to learn Hibernate for experienced programmers

If you prefer online courses for learning along with books then I also suggest you check it out Spring and Hibernate MasterClass from Udemy. You can get this course in just $10 on their New Year Sale starting from 1st January 2018.




6. Soft Skills
One of the thing which many programmers ignore is soft skills e.g. email writing, focusing on career growth and improving themselves. This is a great book from John Sonmez and If you feel that you have stuck in your career or wants to give it a boost in 2019, this is the book you should read.

best soft skill books for programmers


Btw, If you need more recommendation on soft skill and career development book, check out my full list here.



7. Database Design for Mere Mortals
One of the old but good book on Database design. I love to find a good old book which is still relevant and this was the one. If you are interested in learning database design or want to improve your database modeling still this provides a good starting point. If you need more recommendation, please see my full list of database design books here.

best database design books for programmers





8. Clean Architecture
This is one of the good books I discovered last year. I am a big fan of Uncle Bob's writing, having read Clean Code and The Clean Coder already. These books talk more about getting your architecture right. It's one of its kind books and if you want to learn the pros and cons of different software architecture, this is the book to read.

best software architecture books for programmers





9. Making Java Groovy, by Ken Kousen
Last year, I got a chance to work on Groovy little bit and this was the first book I read to learn Groovy. If you decide to learn Groovy in 2019, this book provides a good foundation from Java programmer's perspective. It just gives you enough detail to bring you up to speed without giving you unnecessary detail which you might not understand at the start.

best Groovy books for Java programmers





10. Groovy in Action, Second Edition
This was the second book I read on Groovy last year. Even though Making Java Groovy is good to start with it's not comprehensive and once you learn the basics of groovy and wrote a couple of Groovy scripts, you need more detailed information and that's where this book rocks. If you are learning Groovy in 2019, you can also refer to this book.

best book to learn Groovy




11. TCP/IP Illustrated
One of the books which I least enjoyed but still found it very useful. I have yet to finish with this one but if you have to go deep on TCP/IP this is the book to read.

best book to learn TCP/IP protocol




12. UML Distilled by Martin Fowler
Last year, I had to write a couple of UML diagrams and this is the book I read to refresh my knowledge about UML. If you decide to learn UML in 2019, you can also check out this book.


best book to learn UML





13. The Art of Agile Development
I have been using Agile for quite some time but I still like to read books on Agile to refresh my knowledge and learn one or two new things. This one turned out to be a good book on Agile and even regular users of Agile can learn a thing or two from this book.

Best book to learn Agile





14. Essential Scrum
I have been playing the role of Scrum Master since last year and this was the book I read to get myself ready for the role. Scrum works great with the small, onshore team but it gets tricky when you need to manage a big team remotely, scattered around the world.

Best book to learn Scrum


This book provides all the tools and guidance you need to run Scrum meetings and how to become a ScrumMaster.

If you decide to become ScrumMaster in 2019, this is the book you should read. You can also take some of the online Scrum and Agile courses then I suggest you take a look at Scrum Fundamentals on Pluralisght.




15. Java Performance Companion
I had read a couple of Java performance tuning books before like The Definitive Guide to Java Performance, so I wasn't expecting much. My only goal was to learn about G1 garbage collector which I learned from this book. If your focus is on Java Performance tuning in 2019, this book is a good starting point.

Best book to learn Java Performance Tuning





16. High-Performance Java Persistence
This was another great Hibernate book for senior Java developer. It's focused on improving the performance of Hibernate and JPA application.  If you are serious to improve your knowledge about Hibernate in 2018, I suggest you read both Hibernate tips and this book. If you prefer online courses you can check out my recommended list of course for learning Spring and Hibernate.

Best book to learn Java Persistence





17. Functional Programming in Scala
I tried to get my hand dirty with Scala last year but without much success. I read a book or two but didn't do enough practice to really learn Scala. One reason for that was I wasn't using it on any of my projects and there were more important things to focus.

Anyway, if you decide to focus on Functional programming and Scala in 2019, you can check out this book. I might read it again in 2019 if time permits.

Best books to learn functional programming in Scala





18. Scala for the Impatient
This was one more book on Scala which I looked last year. I am a big of Cay S. Horstmann's writing, having read his several books e.g. Core Java Part 1 and II and Java SE 8 for the Really Impatient. This is a similar book which focuses on Scala. If you are learning Scala in 2019, this is the good book to start with.

Best books to learn  Scala






19. SQL CookBook
SQL is my favorite technology and I am always looking for an interesting book on SQL. I found this one in 2018 and very happy to share with you guys as well. This is a very hands-on book on SQL and teaches you a lot of nice tips about using SQL in different databases.

Read this book in 2019 if you want to improve your SQL skills. You can also use these websites to learn SQL queries to further improve your SQL knowledge.

Best books to learn SQL





20. The Complete Software Developer's Career Guide
Last but not least, this is a great book for a very software developer. If you are serious about your career and want to take control of it in 2019. This is the book you should read in 2019. John Sonmez of SimpleProgrammer.com explains a lot of practical stuff in this book and Soft skill which I shared earlier.

Best books to take care of career development



That's all about the top 20 books Java developers can read in 2019. I have read even more and a couple of more is already pending in my reading list,  but I am only listing 20 for your reference. You can read them too in your free time in 2019. Btw, the first book you should read in 2019 should be the Effective Java 3rd Edition if you haven't read it yet if you have read it already, reading again will not hurt.

Other Java and Programming Articles you may like
10 Things Java and Web Developer Should Learn in 2019
10 Testing Tools Java Developers Should Know
5 Frameworks Java Developers Should Learn in 2019
Finally, Java has var to declare Local Variables
10 Tools Java Developers uses in their day-to-day work

Thanks for reading this article so far. If you like these books then please share with your friends and colleagues. If you have any feedback or suggestion then please drop a note. If you like, you can also follow javarevisited on twitter.

4 comments :

mohit gupta said...

Good list will target same in 2018.Thanks :)

Tushar Parekh said...

Very good list to start the year with! - Thank you!

Kenneth Kousen said...

Thank you for including my "Making Java Groovy" book in your list. I wanted to let you know that last August, O'Reilly Media published my latest book, "Modern Java Recipes", http://shop.oreilly.com/product/0636920056669.do . If you're interested in it, feel free to contact me at ken.kousen@kousenit.com and I'll arrange to have a review copy sent to you.

Javin Paul said...

Hello Ken, First of all a big thanks for writing such a practical and hands-on book like "Making Java Groovy". It really help you to get start with Groovy in no time. Sure, I'll drop you a mail. Thanks

Post a Comment