Repo for the project of software design patterns lecture