The subject is taught in Polish

Description

The course focuses on software design and implementation techniques using object-oriented programming principles. It covers SOLID principles and design patterns that support the creation of flexible, scalable, and easily extensible systems, as well as selected elements of functional programming. The knowledge acquired during the course allows you to design high-quality, maintainable solutions that are adaptable to changing requirements.

Lecture

The lecture part covers the following topics: 
  • Basic principles of the object-oriented paradigm and SOLID principles
  • Creative design patterns
  • Structural design patterns
  • Behavioral design patterns
  • Elements of functional programming
  • Architecture of scalable systems

Laboratory

The aim of the laboratory is to apply in practice the knowledge acquired during lectures:
  • SOLID Principles
  • Creative design patterns
  • Structural design patterns
  • Behavioral design patterns
  • Elements of functional programming

Project

The aim of the project is to implement SOLID principles and design patterns in previously created software.