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.

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.

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 interface

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

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

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