This repository provides a structured organization for learning and delving deeper into Java development, following the roadmap available at roadmap.sh/java. The structure is divided into main topics, each with code examples, commented explanations, and a final project that integrates the concepts learned.
-
1. Java Fundamentals
- Basic structure of a Java program
- Syntax, variables, and data types
- Flow control (if/else, loops)
- Commented examples
-
2. Object-Oriented Programming (OOP)
- Classes and objects
- Inheritance, polymorphism, encapsulation
- Interfaces and abstract classes
- Commented examples
-
3. Data Structures and Collections
- Arrays, lists, maps, sets
- Iterators and streams
- Commented examples
-
4. File Handling and I/O
- Reading and writing files
- Streams and buffers
- Commented examples
-
5. Database Connectivity
- JDBC and ORM (Hibernate, JPA)
- Basic SQL queries
- Commented examples
-
6. Web Development with Java
- Servlets and JSP
- Frameworks (Spring Boot)
- REST APIs
- Commented examples
-
7. Tools and Best Practices
- Maven and Gradle
- Testing with JUnit
- Logging with Log4j or SLF4J
- Commented examples
A practical project integrating the topics above, such as a task management system. The project will include:
- A simple user interface
- Backend with Spring Boot
- Relational database
- Automated tests
- Browse through the topic folders.
- Read the examples and comments in each file.
- Experiment with the code and modify it to reinforce your learning.
- Contribute with improvements or new ideas for the final project!
Feel free to explore and share your Java learning journey!