Duration
5 days
Day 1
1.1 Downloading and Installing necessary software
1.1.1 Java Development Kit versions 8 and/or above
1.1.2 Apache Maven 3.6.x and above
1.1.3 Integrated Development Environments (IDE)
1.2 Introduction to Java compiling, packaging and distribution
1.2.1 Setting up the JDK system environments for Windows and/or Linux
1.2.2 Writing, compiling and executing Java programs
1.2.3 Packaging Java applications with JAR archives
1.2.4 Creating distributable executable JARs
1.3 Introduction to Maven concepts, plugins and project management
1.3.1 Maven objectives, features and use
1.3.2 Maven build lifecyles
1.3.3 Creating a Project with sample archetype templates
1.3.4 Understanding the Project Object Model (POM)
1.3.5 Standard directory layout of a Maven project
1.3.6 Building, compiling, and executing Java projects with Maven
1.4 Introduction to Maven repositories
1.4.1 Configuring Maven with "settings.xml"
1.4.2 Locating local repositories
1.4.3 Searching dependencies with the Maven Central Repository
1.4.4 Including dependencies in Maven projects
1.5 Developing a sample Maven project
1.5.1 Establishing the project directory layout
1.5.2 Authoring a basic POM specification
1.5.3 Basic compiling and testing
1.5.4 Basic packaging, executing, and distributing
Day 2
2.1 Introduction to Spring
2.1.1 Benefits of developing on the Spring and Spring-Boot framework
2.1.2 Starting Spring-Boot projects with the Spring Initializr
2.1.3 Standard directory layout of a Spring-Boot Maven project
2.1.4 Examining the dependencies of a standard Spring-Boot POM
2.1.5 Compiling and running with the Spring-Boot Maven plugin
2.2 Spring Basics
2.2.1 Inversion Of Control (IoC) concepts
2.2.2 Key components of a Spring-Boot application
2.2.3 Running a SpringApplication with CommandLineRunner
2.2.4 Introducing @Configuration, @Beans and @Autowired annotations
2.2.5 Fine-tuning injections with @Primary and @Qualifier annotation
2.3 RESTful Web Service
2.3.1 Setting up the project with Spring Initializr
2.3.2 Using @RestController to create a REST controller
2.3.3 Using @GetMapping @PostMapping to create mappings to services
2.3.4 Building and executing the Sring-Boot application
2.3.5 Deploying the application as a JAR executable
2.4 Deploying as a Web Archive (WAR)
2.4.1 Downloading and installing the Tomcat web-server
2.4.2 Configuring Tomcat with "server.xml" and "tomcat-users.xml"
2.4.3 Configuring the application with SpringBootServletInitializer
2.4.4 Packaging as a WAR application and deploying to the Tomcat container
2.4.5 Comparing with other Servlet containers/servers
2.4.6 Running as a stand-alone Spring-Boot web-server application
Day 3
3.1 Front-end web development
3.1.1 Basic setup and references
3.1.2 Web standards and best practices
3.1.3 HTML web content and structure
3.1.4 CSS styling
3.1.5 JavaScript dynamic functionality
3.1.6 Modern client-side web development tools
3.2 JavaScript
3.2.1 Programming with
3.2.2 Grammar and types
3.2.3 Control flow and error handling
3.2.4 Loops and Iteration
3.2.5 Functions
3.2.6 Expressions and operators
3.2.7 Numbers and dates
3.2.8 Text formatting
3.2.9 Regular expressions
3.2.10 Indexed collections
3.2.11 Keyed collections
3.2.12 Working with Objects
3.2.13 Using classes
3.2.14 Using promises
3.2.15 Iterators and Generators
3.2.16 Meta programming
3.3 DOM (Document Object Model)
3.3.1 DOM and JavaScript
3.3.2 Accessing DOM
3.3.3 Fundamental DOM data types
3.3.4 Interfaces and Objects
3.3.5 NodeSelector selector interface
3.3.6 Creating a DOM tree
3.3.7 Handling events
3.4 Node.js
3.2.1 Introduction to Node.js
3.2.2 Installing Node.js
3.2.3 Differences between Node.js and a Browser
3.2.3 NPM package manager
3.2.4 Installing global and local packages
3.2.5 Modern asynchronous JavaScript
3.2.6 Error handling with Node.js
Day 4
4.1 React / JSX
4.1.1 Introduction to React JSX
4.1.2 Rendering Elements
4.1.3 Components and Props
4.1.4 State and Lifecycle
4.1.5 Handling Events
4.1.6 Conditional Rendering
4.1.7 List and Keys
4.1.8 Forms
4.1.9 Lifting State Up
4.1.10 Composition and Inheritance
4.2 Ember.js
4.2.1 Installing Ember
4.2.2 Creating a new application
4.2.3 Defining a route
4.2.4 Writing a UI component
4.2.5 Building and deploying an app
4.3 Vue.js
4.3.1 Introducing Vue
4.3.2 Online or local building
4.3.3 Creating a Vue Application
4.3.4 Template Syntax
4.3.5 Reactivity Fundamentals
4.3.6 Computed Properties
4.3.7 Class and Style Bindings
4.3.8 Conditional Rendering
4.3.9 List Rendering
4.3.10 Event Handling
4.3.11 Form Input Bindings
4.3.12 Lifecycle Hooks
4.3.13 Watchers
4.3.14 Template Refs
4.3.15 Components
4.3.16 Props
4.3.17 Events
4.4 Svelte
4.4.1 Introducing Svelte
4.4.2 Installing Svelte
4.4.3 Creating a Svelte application
4.4.4 Component Format
4.4.5 Template Syntax
4.4.6 Runtime modules
Day 5
5.1 Angular
5.1.1 Introducing Angular
5.1.2 Installing Angular
5.1.3 Structure of an Angular application
5.1.4 HTML template
5.1.5 Styles
6 Web Project
Programme scope, delivery arrangements and suitability are confirmed during enquiry.