Quite often, I’m asked: Hey Simon, how to learn Java? Here are the top five resources I typically recommend. Happy reading. Happy learning!
I’d recommend starting with Head First Java. I did the same 13 years ago and I still think this is the best book to start learning Java. It’s not your usual textbook, so be prepared for having actual fun learning Java. Be surprised how much you’ll know after having worked through that book.
Next, I blatantly recommend reading the book I co-authored: Java by Comparison. We’ve taught Java for over six years at University, and from that experience, we’ve written Java by Comparison. Our audience in mind has been students knowing enough Java to write simple programs but lacking practice and a mentor that can guide them towards cleaner and more readable code. It features a unique before/after approach comparing bad code to better code, so you can learn step-by-step to transform code into even better code. It’s the book I wished I had when I finished reading Head First Java.
Now, we move on to the book on Java, the classic item-style book that provides uncountable insights how to use Java the right way: Effective Java. Just read that. It’s simply mandatory when you want to call yourself a professional Java developer.
When your programs start to become bigger, you’ll start to feel pain when organizing your code in methods, classes, and packages. That’s when you need to learn about software design. I began my journey with Head First Design Patterns. It features a similar learning style as Head First Java but focuses on how to design your classes instead.
And last but not least, with more and more people adopting a more functional programming style in Java and everywhere else, I recommend watching the unique Venkat Subramaniam explaining how to program in a functional way in Java 8. Happy watching!
These top 5 resources to learn Java originally appeared on howtolearn.de. Feel free to browse all the other topics there as well.