Java Full Stack (React + Angular)

Table of Contents


HTML5

  • Introduction
  • Getting Started
  • Elements & Attributes
  • Navigation
  • Events
  • Web Forms 2.0
  • Web Storage
  • Web SQL Database
  • Geo Location

CSS3

  • Introduction
  • Selectors
  • Styling
  • Box Model
  • Advanced

JavaScript

  • Introduction to JavaScript
  • JavaScript Basics
  • Control Flow
  • Functions and Scope
  • Objects and the Document Object Model (DOM)
  • Arrays and Array Methods
  • Asynchronous JavaScript
  • JavaScript ES6+ Features
  • JavaScript in Web Development
  • Debugging and Testing JavaScript
  • Introduction to JavaScript Frameworks and Libraries

Bootstrap 5

  • Introduction to Bootstrap 5
  • Bootstrap Grid System
  • Bootstrap Components
  • Bootstrap Utilities and Helpers
  • Advanced Bootstrap 5 Features

jQuery

  • Introduction to jQuery and its Features
  • Basic Components of jQuery
  • DOM Manipulation and Events in jQuery

ANSI SQL Using MySQL

  • Introduction to ANSI SQL and MySQL
  • Data Retrieval with SELECT Statement
  • Filtering and Sorting Data
  • Aggregate Functions and Grouping
  • Joins and Subqueries
  • Data Modification with INSERT, UPDATE, DELETE
  • Creating and Modifying Tables
  • Indexes and Constraints

Core Java

  • Introduction to Java
  • Basics of Java Programming
  • Object-Oriented Programming in Java
  • Exception Handling
  • Java Collections Framework
  • Functional Programming in Java
  • Java I/O and File Handling
  • Multithreading and Concurrency
  • Application Debugging Using IntelliJ IDEA
  • Introduction to Reactive Programming
  • Working with Java Modules
  • Java Networking
  • Reverse Engineering Concepts
  • Language-Specific Features - v17, v21
  • Introduction to Java Database Connectivity (JDBC)

Agile Methodology

  • Introduction to Agile
  • Agile Manifesto
  • Scrum Framework
  • Agile Estimation and Planning
  • Agile User Stories
  • Agile Metrics and Reporting

Design Principles

  • SOLID Principles

Spring with Maven

  • Introduction to Spring Framework
  • Setting up a Spring Project with Maven
  • Spring IoC Container
  • Spring Bean Configuration
  • Dependency Injection in Spring
  • Spring AOP (Aspect-Oriented Programming)
  • Spring MVC and ORM
  • Spring Boot (Introduction)
  • Reactive Programming with Spring WebFlux

TDD using JUnit and Mockito

  • Introduction to Test-Driven Development (TDD)
  • Getting Started with JUnit
  • Advanced JUnit Features
  • Mockito Basics
  • Testing Spring Applications with JUnit and Mockito
  • Mocking External Dependencies

Logging and Continuous Code Quality

  • SLF4J, Lombok
  • Continuous Code Quality using SONAR

GIT

  • Introduction to Version Control
  • Understanding Git
  • Setting Up Git
  • Basic Git Commands
  • Branching and Merging
  • Remote Repositories
  • Collaborating with Git

Application Debugging - Backend

  • Debugging Fundamentals
  • Debugging REST Endpoints
  • Debugging Asynchronous Code

Spring Data JPA with Spring Boot and Hibernate

  • Introduction to Spring Data JPA
  • Setting Up a Spring Boot Project with Spring Data JPA
  • Entity Mapping
  • Spring Data Repositories
  • CRUD Operations with Spring Data JPA
  • Query Methods and Named Queries
  • Pagination and Sorting
  • Auditing with Spring Data JPA
  • Spring Data JPA Projections
  • Spring Data JPA and Spring Boot Integration
  • Spring Data JPA and Hibernate

Spring REST with Spring Boot 3

  • Introduction to Spring REST and Spring Boot 3
  • Building a Simple REST Controller
  • Request and Response Handling
  • RESTful Resource Representation with DTOs
  • RESTful CRUD Operations
  • RESTful HATEOAS
  • Content Negotiation and Media Types
  • Spring Boot Actuator for REST Monitoring
  • Security and Authentication in RESTful APIs
  • Testing RESTful APIs
  • Documenting RESTful APIs

Microservices with Spring Boot 3 and Spring Cloud

  • Introduction to Microservices Architecture (MSA)
  • Spring Cloud for Microservices
  • Spring Security for Microservices
  • Centralized Authentication and Authorization
  • Microservices Communication with Spring Cloud
  • API Gateway and Edge Services
  • Fault Tolerance and Resilience
  • Spring Cloud Config
  • Monitoring and Metrics in Microservices
  • Security Best Practices in Microservices

React

  • Introduction to React and Setting Up the Environment
  • TypeScript Essentials for React
  • JSX and Rendering Elements
  • Components and Props
  • State and Event Handling
  • React Hooks
  • Component Lifecycle and Effects
  • React Router and Navigation
  • Forms and Controlled Components
  • Context API for State Management
  • Advanced State Management with Redux
  • Asynchronous Operations and Data Fetching
  • Testing in React
  • Introduction to Node.js
  • Core Node.js Modules
  • Asynchronous Programming Basics

Application Debugging - Frontend

  • Debugging React Applications with Chrome DevTools
  • Debugging with Visual Studio Code

Angular (v16)

  • Introduction to Angular and Setting Up Environment
  • TypeScript Essentials for Angular
  • Angular Components
  • Directives and Pipes
  • Angular Forms
  • Dependency Injection and Services
  • Angular Routing and Navigation
  • Router Features
  • HTTP Client and APIs
  • State Management in Angular
  • Reactive Programming with RxJS
  • Testing Angular Applications
  • Introduction to Node.js
  • Core Node.js Modules
  • Asynchronous Programming Basics

Projects

1. Book Store Application (Full Stack)

  • Frontend: React or Angular (choose one)
  • Backend: Spring Boot with Spring Data JPA and REST
  • Database: MySQL
  • Features:
    • User registration and login
    • CRUD operations for books
    • Book search and filtering
    • Cart and checkout flow
    • Admin panel for managing inventory
    • Role-based access control

2. Task Management System (Team Collaboration Tool)

  • Frontend: Angular
  • Backend: Spring Boot Microservices
  • Database: PostgreSQL
  • Features:
    • User signup and login with JWT-based security
    • Task creation, assignment, and progress tracking
    • Real-time status updates using WebSocket or polling
    • Project creation and team assignment
    • Dashboard for task summaries
    • Email notifications and reminders