Level 2 – Associate (Java Programming)
Objectives
By the end of this course, you should be able to:
- Version Control using GIT
- Use either Maven or Gradle
- Understand more language features
- Understand more on Object-Oriented Programming
- Create Unit Tests
Attendees should have an understanding of basic Java programming such as defining classes, methods, control flow structures, looping statements and arrays.
Online Training (3 days – 3 hrs. per day)
Required Tools and Software:
- Own laptop with a least the following specs:
- Intel Core i5, higher or similar other CPUs
- 16GB RAM or higher
- Any of these operating systems installed
- Windows 11 64-bit, MacOS and Linux
- The following software tools installed:
- OpenJDK 21
- 21.0.1 – https://jdk.java.net/archive/
- IntelliJ IDEA Community Edition
- 2023.3.4 – Windows x64 (exe) – https://www.jetbrains.com/idea/download/other.html
- OpenJDK 21
Course Outline
Day 1
- Version Control System using GIT
- init, clone and remote
- add, commit and delete
- status, pull, push
- Build Systems
- Maven
- Gradle
- Popular Third-Party Libraries
- Apache Commons
- Commons Lang, etc.
- Log4j and Logback
- Jackson
- Apache Commons
- Even More on Object-Oriented Programming
- Creating enum Types
- Abstract Classes
- Interfaces
- Exercises
Day 2
- Exception Handling
- Checked and Unchecked Exceptions
- Streams and Using Streams on Collections
- Essential Java Classes
- The Object Class
- Wrapper Classes
- The System Class
- Formatting Numbers
- Formatting Dates
- Exercises
Day 3
- Input and Output Streams
- NIO Classes and Apache Commons IO
- HTTP Client (built-in)
- Sealed Classes
- The Module System
- Unit Testing
- JUnit 5
- Mockito
- Exercises
Day 4
- The Spring Platform
- Spring Core
- Spring Web
- Spring MVC
- Spring Data
- Exercises
Frequently Asked Questions:
What are the topics that not covered?
- Deploy your code in the cloud or a local server
JavaCore and Object-Oriented Programming
Level 1 Foundational Java Programming – …
Creating Web Apps and APIs
Level 3 Advanced Java Programming – …