Essential Java Developer Learning Resources

Effective Java

Joshua Bloch is providing best practices for writing Java code with great examples and explanations

» Short, stand-alone essay that provides specific advice

» Insight into Java platform subtleties, and updated code examples

» Comprehensive descriptions and explanations for each item illuminate what to do, what not to do, and why.

» Get this book here

Java by Comparison: Become a Java Craftsman in 70 Examples

The authors support you to write better and cleaner code by comparing 70 pieces of problematic code with an improved version.

» Fundamentals of becoming a software craftsman, by comparing pieces of problematic code with an improved version

» Learn to keep your boolean in check, dodge formatting bugs, get rid of magic numbers, and use the right style of iteration.

» Improve the understand-ability of your code for others by following conventions and naming your objects accurately.

» Get this book here

Functional Programming in Java: Harnessing the Power of Java 8 Lambda Expressions
Venkat Subramaniam teaches you the power of the Java 8 lambda expressions to achieve a less error-prone, more elegant, and concise code style.

»  Get on top of the new, essential Java 8 language features and the functional style that will change and improve your code. 

»  Make the paradigm shift from the old imperative way to a less error-prone, more elegant, and concise coding style

»  Explore the syntax and semantics of lambda expressions, method and constructor references, and functional interfaces

» Get this book here

Java Concurrency in Practice
Must read for everyone writing, or designing, or maintaining multithreaded Java applications written by Brian Goetz.

» Simplify a complex but critical subject: concurrency

» Build concurrent applications using Java

» Understand Java concurrency in-depth

» Get this book here

Java Programming for Beginners: Learn the fundamentals of programming with Java

This book is for anyone wanting to start learning the Java language in a step-by-step manner

» Get to know the basic syntax of Java

» Understand object-oriented programming and the benefits that it can bring

»  Familiarize yourself with the workings of some of Java's core classes

» Get this book here

Discover excellent video courses on Pluralsight (with a 10 days FREE trial)

YouTube channels to follow

  • Oracle Developers: Interviews, Java in general, Oracle Code recordings
  • JFokus: Recordings from JFokus conference
  • InfoQ: QCon conference recordings
  • Devoxx: Devoxx recordings
  • in28Minutes: Simple course tracks for few Java topics

Must-follow Twitter handles

  • Brian Goetz (@BrianGoetz): Java Language Architect at Oracle
  • Venkat Subramaniam (@venkat_s): Well-known speaker, author
  • Mark Reinhold (@mreinhold): Chief Architect for the Java platform
  • Joshua Block (@joshbloch): Effective Java Author

Make sure to also have a look at the Essential Java/Jakarta EE & Spring Developer Resources