This course is job oriented for computer science degree engineering students..
Core Java 8
Advanced Java / JEE
Framework: Spring, SpringBoot, Hibernate
HTML5, CSS, JS, Angular
Webservices and Microservices
DevOps
Live project hand on development training
Complete theory and practical knowledge and preparation to crack Java Developer Interview..
JAVA TECHNOLOGIES
CORE JAVA [ JDK 8 / ECLIPSE IDE ]
Introduction
Programming language Types and Paradigms.
How Computer Architecture Affects a Language ?
What and Why is Java ?
Flavors of Java.
Java Designing Goal.
Role of Java Programmer in Industry.
Features of Java Language.
JVM –The heart of Java
Java’s Magic Bytecode
Language Fundamentals
The Java Environment:
Installing Java.
Java Program Development
Java Source File Structure
Compilation
Executions.
Basic Language Elements:
Lexical Tokens, Identifiers
Keywords, Literals, Comments
Primitive Datatypes, Operators
Assignments.
Object Oriented Programming
Class Fundamentals.
Object & Object reference.
Object Life time & Garbage Collection.
Creating and Operating Objects.
Constructor & initialization code block.
Access Control, Modifiers, methods
Nested , Inner Class & Anonymous Classes
Abstract Class & Interfaces
Defining Methods, Argument Passing Mechanism
Method Overloading, Recursion.
Dealing with Static Members. Finalize() Method.
Native Method. Use of “this “ reference.
Use of Modifiers with Classes & Methods.
Design of Accessors and Mutator Methods
Cloning Objects, shallow and deep cloning
Generic Class Types
Extending Classes and Inheritance
Use and Benefits of Inheritance in OOP
Types of Inheritance in Java
Inheriting Data Members and Methods
Role of Constructors in inheritance
Overriding Super Class Methods.
Use of “super”.
Polymorphism in inheritance.
Type Compatibility and Conversion
Implementing interfaces.
Package
Organizing Classes and Interfaces in Packages.
Package as Access Protection
Defining Package.
CLASSPATH Setting for Packages.
Making JAR Files for Library Packages
Import and Static Import
Naming Convention For Packages
Exception Handling:
The Idea behind Exception
Exceptions & Errors
Types of Exception
Control Flow In Exceptions
JVM reaction to Exceptions
Use of try, catch, finally, throw, throws in Exception Handling.
In-built and User Defined Exceptions
Checked and Un-Checked Exceptions
Array & String :
Defining an Array
Initializing & Accessing Array
Multi –Dimensional Array
Operation on String
Mutable & Immutable String
Using Collection Bases Loop for String
Tokenizing a String
Creating Strings using StringBuffer
Thread and Multithreading
Understanding Threads
Needs of Multi-Threaded Programming.
Thread Life-Cycle
Thread Priorities
Synchronizing Threads
Inter Communication of Threads
Critical Factor in Thread -DeadLock
Applet
Applet & Application
Applet Architecture.
Parameters to Applet
Embedding Applets in Web page.
Applet Security Policies
A Collection of Useful Classes
Utility Methods for Arrays
Observable and Observer Objects
Date & Times
The Collection Framework
Collections of Objects
Collection Types
Sets
Sequence
Map
Understanding Hashing
Use of ArrayList & Vector
Using Scanner
Regular Expression
Input/Output Operation in Java(java.io Package)
Streams and the new I/O Capabilities
Understanding Streams
The Classes for Input and Output
The Standard Streams
Working with File Object
File I/O Basics
Reading and Writing to Files
Buffer and Buffer Management
Read/Write Operations with File Channel
Serializing Objects
GUI Programming /SWING
Designing Graphical User Interfaces in Java
Components and Containers
Basics of Components
Using Containers
Layout Managers
SWING Components
Adding a Menu to Window
Extending GUI Features Using Swing Components
Java Utilities (java.util Package)
Event Handling
Event-Driven Programming in Java
Event- Handling Process
Event-Handling Mechanism
The Delegation Model of Event Handling
Event Classes
Event Sources
Event Listeners
Adapter Classes as Helper Classes in Event Handling
Anonymous Inner classes a Short –cut to Event Handling
Avoiding Deadlocks in GUI Code
Event Types & Classes
Networking Programming
Networking Basics
Client-Server Architecture
Socket Overview
Networking Classes and Interfaces
Network Protocols
Developing Networking Applications in Java
Database Programming using JDBC
Introduction to JDBC
JDBC Drivers & Architecture
Connecting and implementing with different RDBMS
CURD operation Using JDBC
Mail API
Introduction to Email Technical Internals
Understanding of POP and SMTP framework
Complete understanding the email API
Mass mailer Application development
ADVANCED JAVA and UI
CLIENT SIDE TECHNOLOGIES
Java Script/CSS/HTML5/Angular/React
Introduction to HTML
• HTML Basics, Elements, Attributes, Styles
• Forms, Form Elements, Input Element Types
• Input Attributes, File Paths, Script tag
• HTML , XHTML and HTML5
Introduction to CSS
• CSS Introduction, Syntax, Selectors, Styling
• Pseudo class, Pseudo Elements
• CSS Tables, CSS Box Models
• CSS Opacity, CSS Navigation Bar, Dropdowns
Introduction to JavaScript
• JavaScript Statements, Keywords, Functions
• JavaScript Programs, Operators, Functions
• Function Parameters, Function Return Types
• Data Types, Primitive Types
Working with Objects
• Object Oriented Programming, Object Creation
• Adding Methods of Objects
• JavaScript Loops & Iteration
• Adding Properties of Objects
• JavaScript Conditional Statements
• Enumerating Properties, Callbacks, JSON
Front End Development / Angular :
1. Typescript
Learn the concepts of typescript that are well used in the development of angular application.
2. Components
Learn how to manually create components as well as learn how to use components such as CLI.
3. Smaller components
Learn how to decompose monolithic UI into smaller components and how to create larger pages.
4. Modules
Understand the process to modularize angular application and learn by creating feature modules.
5. Templating
Learn about template syntax and how to apply these concepts in developing dynamic templates.
6. Form Management
Learn how to develop forms with 2 kinds of techniques- template driven and reactive forms.
7. Services
Learn how to create services to hold business logic, and inject services into services & components
8. Routing and Remote Communication
Learn how to implement navigation and protect routes. Also, learn how to consume remote services.
9. Web components
Understand and learn how to use angular elements in order to implement the web components.
10. Unit testing
Learn how to unit test angular applications using jasmine, angular testing utilities and karma
11. Debugging
Understand Chrome and vscode, and learn how they are used for debugging of Angular applications.
12. Dev Tooling and Bundling
The applications of Angular CLI & augury. And the bundling process & optimizations by Angular CLI.
Front End Development / React
This is a complete hands-on training program with all the new features of recently released React 16.8
2. Explore ES6 & beyond
Learn concepts of modern JS starting with ES6 and go beyond with further versions
3. JSX
Learn how to code UI using declarative syntax JSX
4. Components
Create components, decompose UI into smaller components and compose them to make larger pages
5. State management
Learn how to manage state in react applications and best practices
6. Code splitting & Lazy loading
Understand the need to code splitting and know how to implement the same
7. Hooks & context
Use the advantages of hooks to power function components with state, life cycle and context access
8. Routing
Learn who to implement routing in react application using react-router
9. Isomorphic React
Learn the benefits of universal react and how to implement
10. Unit testing
Learn how to unit test react applications using jest & enzyme
11. Setup up react with webpack
Learn how to build a react development environment from scratch using webpack
12. Debugging
Learn how to debug react applications using chrome and vscode
13. Dev Tooling
Learn how to take advantage of react and redux devtools
14. Bundling
Understand the bundling process and optimizations applied by create-react-app build
Introduction to JEE
JEE Overview
Why JEE?
JEE Architecture
JEE API
JEE Containers
Server Side Technologies
Servlet
Web Application Basics.
Architecture and challenges of Web Application.
Introduction to servlet
Servlet life cycle
Developing and Deploying Servlets
Exploring Deployment Descriptor (web.xml).
Handling Request and Response
Initializing a Servlet
Accessing Database
Servlet Chaining
Session Tracking & Management
Dealing with cookies
Transferring Request
Accessing Web Context
Passing INIT and CONTEXT Parameter
Sharing information using scope object
Controlling concurrent access
User Authentication
Filtering Request and Response
Programming Filter
Filter Mapping, Servlet Listeners
JSP ( Java Server Pages ):
Basic JSP Architecture
Life Cycle of JSP (Translation, compilation)
JSP Tags and Expressions
Role of JSP in MVC-2
JSP with Database
JSP Implicit Objects
Tag Libraries
JSP Expression Language (EL)
Using Custom Tag
JSP Capabilities:
Exception Handling
Session Management
Directives
JSP with Java Bean
RMI (Remote Method Invocation)
RMI overview
RMI architecture
Example demonstrating RMI
Enterprise JAVA Beans
Enterprise Bean overview
Types of enterprise beans
Advantages of enterprise beans
The Life Cycles of Enterprise Beans
Working with Session Beans
State-full vs. Stateless Session Beans
Working with Entity Beans
Message Driven Beans
JNDI (Java Naming and Directory Interface)
JNDI overview
JNDI API
Context operations
Using JNDI in J2EE applications
HIBERNATE
Introduction To Hibernate
Setting Up Hibernate
Part-1- Writing a Hibernate Application
Part-2-Writing-the-Model-Class-with-Annotations
Part-3-Saving-Objects-using-Hibernate-APIs
Configuration-and-Name-Annotations
More-Annotations
Retrieving-Objects-using-session-get
Primary-Keys
Value-Types-and-Embedding-Objects
Attribute Overrides-and-Embedded-Object-Keys
Saving-Collections
Configuring Collections and Adding Keys
Proxy Objects and Eager and Lazy Fetch Types
One To One Mapping
One To Many Mapping
Cascade and Types
Implementing Inheritance
Implementing Inheritance - Single Table Strategy
Implementing Inheritance With Table Per Class Strategy
Implementing Inheritance With Joined Strategy
CRUD Operations
Transient, Persistent and Detached Objects
Understanding-State-Changes
Persisting-Detached-Objects
Introducing HQL and the Query Object
Select-and-Pagination-in-HQL
Understanding Parameter Binding and SQL Injection
Named Queries
Introduction-to-Criteria-API
Understanding-Restrictions
Projections-and-Query-By-Example
Cacheing - in-Hibernate
Configuring-Second-Level-Cache
Using-Query-Cache
SPRING FRAMEWORK
Introduction to Spring Framework.
Dependency Injection / Inversion of control.
IOC Containers.
Aspect Oriented Programming.
Spring web MVC.
Spring DAO
Object Relational Mapping Intergration.
Transaction Management
Spring Security
Spring Web flow
PROJECT WORKS
*DESKTOP APPLICATIONS [ CRUD implementation ]
*WEB APPLICATIONS using SPRING and Hibernate [ CRUD implementation]
Spring Boot Training Outline
Introduction
Spring Configuration Overview
• Spring Review - XML and @Component
• Dependency Injection
• Java-based Configuration (@Configuration)
• Integrating Configuration of Different Types
Introduction to Spring Boot
• Brief maven Overview
• Intro to Spring Boot - What is Spring Boot and What It Does
• Spring Boot Hello World / SpringApplication
• SpringBootApplication / CommandLineRunner / ApplicationRunner
Configuration and Customization
• Working with Properties - YAML and .properties
• Logging and its Configuration
• Spring TestContext Framework
• Auto-configuration Overview
• Customization
Spring Boot Database Support
• Basic Auto-configuration - Datasource and Pooling
• Configuration Properties
• Spring Boot's JPA Support - spring-boot-starter-data-jpa
• Spring Boot Data (with Data-JPA in Detail)
• Using Spring Boot Data - CrudRepository/JpaRepository
• Defining Queries with Spring Boot Data
Spring Boot Web/REST and Security
• DispatcherServlet Review
• Web Starters and Configuration spring-boot-starter-web
• Using Embedded Servers (Tomcat, Netty)
• Deploying to an External Server
• Spring Security Overview (Web)
• spring-boot-starter-security - Auto-configuration and Customization
• Spring Boot Data Rest - Generated Web Services from Repositories
Actuator and Devtools:
• Actuator Overview and Capabilities
• Actuator Endpoints
• Custom Actuators and Health Checks
Spring Boot CLI
• Overview and Capabilities
• Grabbing / @Grab
• Other Capabilities
Microservices Architecture and implementation using SpringBoot
Introduction
• Building Microservices with Spring Boot
Bootstrappings
• Introduce Spring Boot With Microservices
• Write Groovy-based Spring CLI applications
• Bootstrap with the Spring Initializer
• Build with Maven
• Work with starter POMs
• Create runnable 'fat' JARs
• Understand auto-configuration
Using 'Twelve-Factor App' Style Configuration
• Understand 'Twelve-Factor App' configuration
• Read external configuration
• Map properties to POJOs
• Take it easy with relaxed binding
• Support multiple environments using Spring profiles
• Centralize configuration with the journaled, secure Spring Cloud Configuration Server
• Refresh configuration without restarting your application
Reaching for The Clouds
• Embrace 'The Cloud'
• Compare IaaS and PaaS
• Deploy your apps to Heroku and Cloud Foundry
• Containerize your applications with Docker
Working with Data
• Contextualize your microservice data
• Understand Spring Data
• Work with relational databases
• Expose Spring Data repositories over REST
Giving Your Microservice a REST
• Giving Your Microservice a REST
• Understand status codes
• Understand content negotiation
• Understand HTTP Clients
• Use hypermedia
• Handle errors
Introduction to Microservices
• What are Microservices?
• Decentralized Governance, Scaleability, Fault Tolerance
• Understand Enterprise Application Integration Patterns
• Cloud Computing
• Spring Cloud
• Service and Client Discovery
• Netflix OSS
Netflix OSS
• Service Discovery
• Eureka Servers and Clients
• Eureka Servers and Clients
• Load Balancing with Ribbon without Eureka
Circuit Breakers
• Circuit Breakers
• Circuit Breakers - Hystrix
Monitoring with Sleuth and Zipkin
• Logging with Sleuth
• Monitor with Zipkin
Filtering with Zuul
• Filtering requests and Zuul
• Feign clients
Creating Operations-Friendly Microservices
• Introduce the Spring Boot Actuator
• Monitor microservices
• Diagnose errors
• Extend the Spring Boot Actuator