Design Patterns (SE)

Type: Normative

Department: radioelectronic and computer systems

Curriculum

SemesterCreditsReporting
36Setoff

Lectures

SemesterAmount of hoursLecturerGroup(s)
332Associate Professor Olenych I. B.ФеП-21, ФеП-22

Laboratory works

SemesterAmount of hoursGroupTeacher(s)
332ФеП-21Sinkevych O. O., Sinkevych O. O.
ФеП-22

Опис навчальної дисципліни

The purpose of teaching the discipline is to provide students with knowledge about the main types of design patterns; combining object-oriented code in the context of generating, structural and behavioral patterns; the process of constructing structural units of patterns; object-oriented code design standards; mechanisms of interaction of complex class structure.

The main objectives of the discipline: to teach students to use Python to implement and apply design patterns; to acquaint students with the main types of patterns: structural, generative and behavioral; provide an understanding of the issues and timeliness of the application of specific patterns in many examples; show the nuances and schemes of specific patterns and give skills for their use in the design of typical solutions within the object-oriented paradigm.

According to the requirements of the educational and professional program, students must:

know: what is a design pattern and what it consists of; classification of patterns, history of their origin and fundamental sources; principles of design and quality of correct code architecture; class interfaces; SOLID principle; when and how to apply a specific pattern implementation.

be able to: correctly design object-oriented code; apply the mastered material to create object-oriented programs; use Python for software implementation of patterns; implement simple modular testing; determine when to use a pattern of a certain type.

Recommended Literature

  1.  Erich Gamma, John Vlissides, Richard Helm, Ralph Johnson. Design patterns, software engineering, object-oriented programming. Addison-Wesley, 1994. – 335 p.
  2.  Ерік Фрімен. Патерни проектування. O’Reilly Media, 2014. – 672 с.
  3.  Sean Bradley. Design Patterns In Python. Common GoF (Gang of Four) Design Patterns Implemented In Python, 2021. – 238 p.
  4.  Robert Martin. Clean Code: A Handbook of Agile Software Craftsmanship. Pearson Education (US), 2008. – 464 p.
  5.  John F. Dooley. Software Development, Design and Coding. Apress, 2017. – 330 p.
  6.  Design Patterns [Електронний ресурс] – Режим доступу до ресурсу: https://sourcemaking.com/design_patterns.Навчальна дисципліна сайт

Силабус:

Завантажити силабус