Programming 2

About this course

This course provides an introduction to object-oriented design in Java with an emphasis on practical techniques for developing complex software systems.

Organisation

Prerequisites

You should have successfully completed the Programmming 1 course.

Learning outcomes

You will learn:

Schedule (Spring Semester 2025)

DateTopic
21-02Introduction
28-02Object-Oriented Design Principles
07-03Design by Contract
14-03Testing and Debugging
21-03Inheritance and Polymorphism
28-03Iterative Development and Refactoring
04-04Design Patterns
11-04GUI Construction
18-04(No class)
25-04(No class)
02-05A Bit of Functional Programming
19-05Introduction to Aspect-Oriented Programming
16-05Guest Lecture (TBA)
23-05Guest Lecture (TBA)
30-05Q&A

Exam

Repetition exam