Course Program Application Design

The program is an indication and by no means guaranteed to be exact! No class is ever the same.
Lessons usually contain some lecturing and some exercise. You are assumed to do the remaining exercises in your own time.

Lecture Topics Homework
1
  • General Intro. Introducing the course contents, organization and the way it is assessed
  • Intro Agile. A very short primer on Agile principles
  • Exercise set 1. Code analysis exercise
  • Refactoring Exercise. Ongoing; see refactoring training exercise
2
  • JUnit testing. Introducing Test-Driven Design and the basics of JUnit
  • Exercise set 2. JUnit Exercises (1)
3
  • JUnit testing. Continuing with Test-Driven Design and JUnit
  • Exercise set 2. JUnit Exercises (2-5)
4
  • Java OO. A refresher of what was introduced in courses Java and Web-based, and extension of important OO concepts
  • Exercise set 3. Datamodel design
5
  • UML. A very short primer on Unified Modelling Language
  • Multithreading. Classical multithreading in Java
  • Java 8 features. Streams, Lambdas and Optionals
  • Exercise set 4. Lambdas & Streams (1)
6
  • Java 8 features. Continuing with Streams, Lambdas and Optionals
  • Exercise set 4. Lambdas & Streams (2-3)
  • Exercise set 5. Immutable class design
7
  • Design Patterns. Introducing the concept and describing the first (Behavioral) patterns
-
8
  • Design Patterns. Some more patterns
  • Selfstudy. Read presentation on refactoring
9
  • Refactoring. Collecting thoughts about refactoring and working on a demo case
  • Refactoring exercise
10
  • Buffer lesson and Wrap-up. See what's left or still unclear
Training exam