Что такое паттерны проектирования?
Паттерны (или шаблоны) проектирования - это продуманные типовые решения типовых задач.
Шаблоны проектирования - это общие архитектурные подходы, которые люди наблюдали в объектно-ориентированном программировании. И в итоге решили составить каталог из тех, что встречались чаще всего.
В программировании достаточно много времени уделяется оптимизации кода. И переделывать сложнее, чем изначально заложить такую структуру и стиль, которые будут нуждаться в минимальных доработках. Нужно быть настоящим архитектором своего кода, а поможет в этом понимание и грамотное применение шаблонов проектирования.
Шаблоны проектирования - это важнейший из инструментов разработчика, который упрощает и ускоряет процесс обмена информацией при разработке, сокращает время на обсуждения по проектам и понимание "чужого" кода. Сами названия шаблонов являются полноценными терминами, означающих готовые схемы-решения.
Шаблоны проектирования встречаются повсюду: в любых библиотеках, они встроены в сами языки программирования. Так что вы даже не всегда осознаёте, что ими уже пользуетесь.
Впервые шаблоны проектирования были введены в оборот в 1994 году с выходом книги Design Patterns: Elements of Reusable Object-Oriented Software за авторством Erich Gamma (Эрих Гамма), John Vlissides (Джон Влиссидес), Ralph Johnson (Ральф Джонсон) and Richard Helm (Ричард Хелм), которых часто именуют “Бандой четырёх” (англ. Gang of Four, часто сокращается до GoF). Именно эта книга стала причиной роста популярности шаблонов проектирования и создала целую отрасль, посвящённую шаблонам проектирования.
Чему вы научитесь
Курс даёт всеобъемлющий обзор паттернов (шаблонов) проектирования на Python на практике. Этот курс покрывает шаблоны посредством:
- использования самой новой версии Python
- использования современных подходов программирования: инъекции зависимостей, реактивное программирование и т.д.
- использования современных средств разработки таких как PyCharm
- дискуссий различных вариаций паттернов и различных подходов
На курсе рассматриваются все шаблоны проектирования из книги "банды четырёх", а также их различные современные вариации с поправками и использованием особенностей языка Python. Вот полный список тем:
- Принципы проектирования SOLID: принцип единственной ответственности (SRP), принцип открытости / закрытости (OCP), принцип подстановки Лисков (LSP), принцип разделения интерфейсов (ISP), принцип инверсии зависимостей (DIP)
- Паттерны порождения: строитель, фабрики, прототип, одиночка
- Структурные паттерны: адаптер, мост, компоновщик, декоратор, фасад, приспособленец, прокси
- Поведенческие паттерны: цепочка зависимости, команда, интерпретатор, итератор, медиатор, хранитель, наблюдатель, состояние, стратегия, шаблонный метод, посетитель
В каждом разделе есть задание по программированию, где надо использовать рассмотренный шаблон проектирования. Код решения приложен. Обязательно сначала попробуйте решить самостоятельно!
Для кого этот курс- Курс для опытных (как минимум очень хорошо знакомых с Python) разработчиков, которые хотят познакомиться с современными вариантами реализации паттернов (а не только книжными устаревшими)
- Для понимания и осознания этого материала требуется хорошее абстрактное мышление инженерное или побольше практики в программировании
Требования для прохождения курса- Уверенные знания в Python
Для получения базовых знаний рекомендуем пройти наши курсы для начинающих:
Полный курс Python для начинающих – с нуля до специалиста
Полный курс Python – продвинутый уровень + SQL
Присоединяйтесь к изучению Python на профессиональном уровне!
-
Цена - 1 788 руб.
- Продолжительность курса составляет 12 часов
- В рассрочку от школы 149 руб.