Level 1 – Foundational (Java Programming)
Objectives
By the end of this course, you should be able to:
- Understand the Java Platform
- Learn about Control Flow Structures and Looping Statements
- Define Classes and Create Objects
Suitable for students, career shifters, or those with zero knowledge in programming.
Online Training (3 days – 3 hrs. per day)
Attendees should have good logical skills, good listener, and able to take notes.
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: The Java Platform
- What is Java?
- Java Virtual Machine
- Java Development Process
- Java Development Overview
- Installing the Java Development Kit
- Setting Up Your Development Environment
- Writing Your First Java Application
- Compiling and Running Java Programs
- Java Language Fundamentals
- Elements of a Java Program
- Importing and Creating Packages
- Defining Variables, Literals and Data Types
- Using The var Keyword
- Comments
- Operators
- Exercises
Day 2: Control Flow Structures, Looping Statements, Java Arrays, etc.
- Control Flow Structures – if, if-else, switch
- Looping Statements – for, while, do-while
- Transfer of Control – continue, break
- The String Class
- Text Blocks
- Java Arrays
- Declaring Arrays
- Creating Arrays
- Accessing Array Elements
- Determining the Number of Elements in an Array
- Creating Multi-Dimensional Arrays
- Command-line Arguments
- Exercises
Day 3: Object-Oriented Design and Classes
- Object-Oriented Design
- Object and Classes
- Declaring Object References
- Creating Objects
- Accessing Methods and Static Methods
- Accessing Attributes
- Creating Your Own Classes
- Declaring Classes
- Declaring Attributes
- Declaring Methods
- Constructors
- The new Keyword
- The this Reference
- The super Reference
- Method Overloading
- Exercises
Day 4: Object-Oriented Programming Generics and Collection Classes
- More on Object-Oriented Programming
- Inheritance
- Single Inheritance Vs Multiple Inheritance
- Encapsulation
- Member Visibility
- Method Overriding
- Generics
- Collection Classes
- List, Set and Map
- Boxing and auto-unboxing
- Exercises
Frequently Asked Questions:
What are the topics that not covered?
- Unit Testing
- Version Control System (ex. Git)
- Deep dive on Maven or Gradle
- Deploy your code in the cloud or a local server
OOP Concepts and Unit Testing
Level 2 Associate Java Programming – …
Creating Web Apps and APIs
Level 3 Advanced Java Programming – …