Course Outline
This is a high-level overview of the course, including links to the slides and recommended reading.
It is highly recommended that you go through the slides before the session.
The reading list is optional but recommended. They include alternative explanations for concepts, and additional examples.
Useful Resources
These resources are particularly good and will be recommended throughout the course.
- w3schools Java Tutorial provideds a concise but detailed overview of Java’s features page-by-page. The site even features simple exercises.
- Programiz Learn Java Programming another good but more in-depth resource that we cherry-pick pages from for this course. These in general have more detail than w3schools.
Session 1
Before you attend the first session, you should be ready to write, build, and run Java code.
We will be learning the base tools every programming language has using psuedocode - a half-way between natural language and programming languages.
This lesson will be delivered in lecture format, covering “Describing how to solve problems”
Actions:
- Follow the Developer Setup Guide
Slides:
Reading List:
- hackr.io blog - What is Programming? (You don’t need to do the “Writing your first program” section)
- freeCodeCamp - What is Computer Programming? Defining Software Development.
Session 2
We will now translate our knowledge of programming’s base tools into Java.
Slides: Java 101 - The basic building blocks of programming
Reading List:
- w3schools
- Hello World Explained
- Java Variables (This uses the old style of declaring variables)
- Data Types
- Operators (includine ones I have not covered)
- A more detailed String tutorial
- Booleans
- If-Statements (including a different form known as a ternary operator)
Session 3
We’ll extend the toolset we’ve seen so far in Java by adding collections and loops (aka iteration).
Slides: Java 101 - The basic building blocks of programming part 2
Reading List:
- w3schools
- For-Loops
- While-Loops including Do-While, in which the code block is run at least once.
- Programiz pages expanding on collections:
Sesson 4
We now come to one of Java’s main features - Object-Oriented programming. This allows us to create our own types and give them functionality unique to them.
Slides: Java 101 - Classes and Methods
Reading List:
- w3schools
- Programiz
- Java Class and Objects - a decent example of creating a class, creating instances, and using methods.
- Constructors - a decent example of creating a class, creating instances, and using methods.