Advanced Design and Programming (ADAP)

This course teaches principles and practices of advanced object-oriented design and programming using a semester-long project.

The course is structured into 15 sessions of 90 min. each, as is customary in Germany. As the videos show, you can be faster or slower to make it work for you.


01Course introduction90 min.
02Guidelines and component testing90 min.
03Acceptance and integration testing90 min.
04Method types and properties90 min.
05Class and interface design90 min.
06Subtyping and inheritance90 min.
07Design by contract90 min.
08Error and exception handling90 min.
09Value objects90 min.
10Design patterns90 min.
11Type objects90 min.
12Object creation90 min.
13Collaboration-based design90 min.
14Object-oriented frameworks90 min.
15Course conclusions90 min.


Lecture slides
YouTube playlist


Unless specified otherwise, the ADAP course materials are licensed under the CreativeCommons CC BY 4.0 International license.