Skip to content

Java Roadmap

  • Roadmap: https://roadmap.sh/java

1. Learn the Basics

2. Object Oriented Programming

Moved. The Object-Oriented Programming roadmap is now a top-level, paradigm-level section: Programming → Object-Oriented Programming. It covers basics of OOP, advanced features, object contracts & semantics, method dispatch & internals, design principles, anti-patterns & code smells, and tactical DDD. Object-thinking (behavior-first, tell-don't-ask, CRC cards) moved to Engineering Thinking → Object Thinking.

3. Exception Handling

4. Lambda Expressions

5. Annotations

6. Modules

7. Optionals

8. Collections

  • 8.1 Array vs ArrayList
  • 8.2 Set
  • 8.3 Map
  • 8.4 Queue
  • 8.5 Dequeue
  • 8.6 Stack
  • 8.7 Iterator
  • 8.8 Generic Collections

9. Dependency Injection

10. Concurrency

  • 10.1 Threads
  • 10.2 Virtual Threads
  • 10.3 Java Memory Model
  • 10.4 volatile keyword

11. Cryptography

12. Date and Time

13. Networking

14. Regular Expressions

15. I/O Operations

  • 15.1 File Operations

16. Functional Programming

  • 16.1 High Order Functions
  • 16.2 Functional Interfaces
  • 16.3 Functional Composition
  • 16.4 Stream API

17. Build Tools

  • 17.1 Maven
  • 17.2 Gradle
  • 17.3 Bazel

18. Web Frameworks

  • 18.1 Spring (Spring Boot)
  • 18.2 Quarkus
  • 18.3 Javalin
  • 18.4 Play Framework

19. Database Access

  • 19.1 JDBC
  • 19.2 EBean
  • 19.3 Hibernate
  • 19.4 Spring Data JPA

20. Testing

20.1 Unit Testing

  • 20.1.1 JUnit
  • 20.1.2 TestNG

20.2 Integration Testing

  • 20.2.1 REST Assured
  • 20.2.2 JMeter

20.3 Behavior Testing

  • 20.3.1 Cucumber-JVM

20.4 Mocking

  • 20.4.1 Mockito

21. Logging Frameworks

  • 21.1 Logback
  • 21.2 Log4j2
  • 21.3 SLF4J
  • 21.4 TinyLog