Java Full Stack
1. Java Programming, Debugging and Unit Testing
Development Environment setup
Language Fundamentals (Expressions, Statements, Methods)
Control Flow Statements
Java OOP - Classes, Constructors, Inheritance, Polymorphism
Arrays, Lists, Autoboxing
Inner and Abstract Classes & Interfaces
Java Generics
Packages
Java Collections
Java IO - Console and File Streams, Serialization
Concurrency in Java
Debugging and Unit Testing (Junit & Mockito)
Database Manipulation with JDBC
Java 8 New Features - Lambda Expressions, Streams, Date Time APIs
2. Version control using GIT
Learn the key concepts of the Git source control system
Step through the entire Git workflow
Compare the different states in Git
Compare between branches and commits
Manage files with Git (move, rename, delete)
Update files managed outside Git
Create and fork repositories on GitHub
Create branches and resolve merge conflicts
3. Java EE Web Application Fundamentals
Environment Setup with Eclipse & Tomcat
JSP Fundamentals
Reading HTML form Data with JSP
State Management with JSP
JSP Standard Tag Library - Core & Fundtion Tags
Servlet API Fundamentals
Servlet Context, Session, Cookies
Request Redirection Techniques
Building MVC App with Servlets & JSP
Complete App - Integrating JDBC with MVC App
4. Java Persistence using JPA and Hibernate
Fundamentals of Java Persistence with Hibernate
JPA for Object/Relational Mapping, Querying, Caching, Performance and Concurrency
First & Second Level Caching, Batch Fetching, Optimistic Locking & Versioning
Entity Relationships, Inheritance Mapping & Polymorphic Queries
Querying database using JPQL and Criteria API (JPA)
5. Apache Maven
Maven Fundamentals
Software Setup - Command line and Eclipse
pom.xml and Directory Structure
Multi-Module Project Creation
Scopes
Dependency Management
Profiles
6. Spring Core, Spring MVC, Spring Boot REST API
Understanding Spring Framework
Using Spring MVC
Building a Database Web App with Spring and Hibernate
Spring AOP (Aspect Oriented Programming)
Implementing Spring Security
Developing Spring REST API
Using Spring Boot for Rapid Development
7. Agile, Scrum and DevOps Fundamentals
Introduction to Agile Methodology
Scrum Fundamentals
Scrum Roles, Artifacts and Rituals
DevOps – Architecture, Lifecycle, Workflow & Principles
DevOps Tools Overview – Jenkins, Docker, Kubernetes
8. Web Design & Development
HTML5 – Syntax, Attributes, Events, Web Forms 2.0, Web Storage, Canvas, Web
Sockets
CSS3 – Colors, Gradients, Text, Transform
BootStrap for Responsive Web Design
JavaScript – Core syntax, HTML DOM, objects, classes, Async
Ajax and jQuery Introduction
9. Front-end Development using Angular
Setting up Development & Build Environment: Node.js and NPM
Introduction to TypeScript
Working with OOP concepts with TypeScript
Angular Fundamentals
Angular CLI
Introduction to TypeScript
Debugging Angular applications
Components & Databinding in Depth
Angular Directives
Using Services & Dependency Injection
Angular Routing
Observables
Handling Forms in Angular Apps
Output transformation using Pipes
Making Http Requests
Authentication & Route Protection
Dynamic Components
Angular Modules & Optimizing Angular Apps
Deploying an Angular App
Angular Animations
Adding Offline Capabilities with Service Workers
Unit Testing in Angular Apps (Jasmine, Karma)