Design Patterns (SE)
Type: Normative
Department: radioelectronic and computer systems
Curriculum
Semester | Credits | Reporting |
3 | 6 | Setoff |
Lectures
Semester | Amount of hours | Lecturer | Group(s) |
3 | 32 | Associate Professor Olenych I. B. | ФеП-21, ФеП-22 |
Laboratory works
Semester | Amount of hours | Group | Teacher(s) |
3 | 32 | ФеП-21 | Sinkevych 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
- Erich Gamma, John Vlissides, Richard Helm, Ralph Johnson. Design patterns, software engineering, object-oriented programming. Addison-Wesley, 1994. – 335 p.
- Ерік Фрімен. Патерни проектування. O’Reilly Media, 2014. – 672 с.
- Sean Bradley. Design Patterns In Python. Common GoF (Gang of Four) Design Patterns Implemented In Python, 2021. – 238 p.
- Robert Martin. Clean Code: A Handbook of Agile Software Craftsmanship. Pearson Education (US), 2008. – 464 p.
- John F. Dooley. Software Development, Design and Coding. Apress, 2017. – 330 p.
- Design Patterns [Електронний ресурс] – Режим доступу до ресурсу: https://sourcemaking.com/
design_patterns.Навчальна дисципліна сайт