Git repo for college course Design patterns in Programming.
https://www.fer.unizg.hr/predmet/ooup
The course addresses general principles and specific methods for designing flexible and modular software subsystems. A notion of a design pattern is introduced as a well known and tested solution to a recurring problem in a particular problem domain. The classifications of design patterns are considered, according to purpose, scope, and the level of abstraction, together with the corresponding representatives. It is assumed that the basic pieces of knowledge from the domain of object oriented programming have been acquired on the introductory courses.