Introduction: Lector, What we will learn, What expect after course
IDE’s overview: Present existing and populars, Java programing, Integrated Development Environment, Prepare Eclipse IDE, Best practices using Eclipse, First Java App
Some of the important Java 8 features: forEach() method in Iterable interface, default and static methods in Interfaces, Functional Interfaces and Lambda Expressions, Java Stream API for Bulk Data Operations on Collections, Java Time API, Collection API improvements, Concurrency API improvements
Java 9: Private Interface (Default) Methods, Try-With-Resources on Effectively Final Variables, Diamond Operator for Anonymous Classes, SaveVarargs on Private Methods, No More Deprecation Warnings for Imports
Basics of a Web app: What is a web application? What is a web client and web server? How do client and server communicate? HTTP protocol basics; What is a TCP/IP port, URL? Web Application Project Setup
HTML: HTML language basics/intro, Form Methods, CSS intro
Web Containers: Set up Tomcat Container on a machine, Set up a Servlets JSP project in Eclipse, Configure dependency of Servlet JSP APIs, Web application project structure
Servlets: What are Servlets? What can they do? Why are they needed? How do Servlets look in code? GET/POST request; differences between the two; Servlet Lifecycle; Servlet Context and Servlet Config; Forwarding and Redirection of requests
Session Management: What is a session? Why is it required? How to get a session?Session information passing between client and server; Session information passing mechanisms – Cookies; Rewriting; How to destroy a session
JSPs (quick overview): Introduction to JSP; Basic HTML tags, JSP Lifecycle, JSP Elements, JSP Tag library, Simple test app
Version Control Systems: What it is? Why? Compare them? GIT: pull, push commit, checkout…
Command line: Linux shell Overview, Popular Commands, Git batch
Task Management: Introduction, JIRA, Redmine, Confluence
Requirements Engineering: Software Requirements, Requirements Gathering, Requirements Analysis, Formal development Process, Requirements Flow, Business Need
CI: Build management tools, Bamboo, Jenkins