Мы используем файлы cookie для обеспечения работоспособности сервиса, улучшения навигации и маркетинговых активностей Yolonce. Нажимая "Согласен", вы соглашаетесь с нашей Политикой конфиденциальности

Шаблоны проектирования на Python

  Сложность

Пока неизвестно

  Длительность

шаблоны проектирования, Python, питон, паттерны проектирования

  Формат

онлайн

  Документ по выпуску

Сертификат Stepik

Стоимость курса
1 990

Подробнее о курсе

Курс даёт всеобъемлющий обзор паттернов (шаблонов) проектирования на Python на практике. Этот курс покрывает шаблоны посредством: использования самой новой версии Python использования современных подходов программирования: инъекции зависимостей, реактивное программирование и т.д. использования современных средств разработки таких как PyCharm дискуссий различных вариаций паттернов и различных подходов На этом курсе мы рассмотрим все шаблоны проектирования из книги "банды четырёх", а также их различные современные вариации с поправками и использованием особенностей языка Python. Что такое паттерны проектирования? Паттерны проектирования - это типовые решения типовых задач. Впервые были введены в оборот в 1994 году с выходом книги Design Patterns: Elements of Reusable Object-Oriented Software за авторством Erich Gamma, John Vlissides, Ralph Johnson and Richard Helm (которых часто именуют бандой четырёх). Оригинальная книга была написана с использованием C++ и Smalltalk, но с тех пор паттерны проектирования были адаптированы ко всем известным языкам программирования: C#, Java, Python и даже к тем ЯП, которые, строго говоря, не являются объектно-ориентированными, такими как Java Script. На самом деле, мы видим шаблоны проектирования повсюду: в любых библиотеках, видим их встроенными в сами языки программирования. Так что вы даже не всегда осознаёте, что ими пользуетесь. Какие паттерны разобраны на курсе? Курс покрывает все паттерны проектирования из книги банды четырёх. Вот полный список тем: Принципы проектирования SOLID: принцип единственной ответственности (SRP),  принцип открытости / закрытости (OCP), принцип подстановки Лисков (LSP), принцип разделения интерфейсов (ISP), принцип инверсии зависимостей (DIP) Паттерны порождения: строитель, фабрики, прототип, одиночка Структурные паттерны: адаптер, мост, компоновщик, декоратор, фасад, приспособленец, прокси Поведенческие паттерны: цепочка зависимости, команда, интерпретатор, итератор, медиатор, хранитель, наблюдатель, состояние, стратегия, шаблонный метод, посетитель Для кого этот курс? Это - курс для опытных (как минимум очень хорошо знакомых с Python) разработчиков, которые хотят познакомиться с современными вариантами реализации паттернов (а не только книжными устаревшими). Стиль презентации курса Этот курс подаётся как большие видео-серии кодинг-демо в PyCharm отрендеренные с помощью движка Kinetica. Kinetica убирает визуальную загромождённость редактора, фокусируя вас на коде. Большинство демок соотносятся с единственным файлом исходного кода, так что вы можете его скачать и тут же запустить в PyCharm, IDLE или где угодно. В этом курсе нет UML-диаграмм. Все демки - живое программирование.

Документ после выпуска

Сертификат Stepik

Автор курса

Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.

Программа курса

  Введение


- О курсе
- Задачи и решения
- Чат студентов

  Принципы проектирования SOLID


- Обзор принципов
- Single Responsibility Principle (SRP)
- Open Closed Principle (OCP)
- Liskov Substitution Principle (LSP)
- Interface Segregation Principle (ISP)
- Dependency Inversion Principle (DIP)
- Заключение

  Строитель (Builder)


- Категоризация Гаммы
- Обзор
- Строитель
- Комбинирование строителей через интерфейс
- Строители через наследование
- Задача на паттерн строитель
- Заключение

  Фабрики (Factories)


- Обзор
- Фабричный метод
- Фабрика
- Абстрактная фабрика
- Задача на паттерн Фабрика
- Заключение

  Прототип (Prototype)


- Обзор
- Прототип
- Фабрика прототипов
- Задача на паттерн Прототип
- Заключение

  Одиночка (Singleton)


- Обзор
- Одиночка через аллокатор
- Одиночка через декоратор
- Одиночка через метакласс
- Monostate
- Одиночка и тестирование
- Задача на паттерн Одиночка
- Заключение

  Адаптер (Adapter)


- Обзор
- Адаптер (без кеширования)
- Адаптер (с кешированием)
- Задача на паттерн Адаптер
- Заключение

  Мост (Bridge)


- Обзор
- Мост
- Задача на паттерн Мост
- Заключение

  Компоновщик (Composite)


- Обзор
- Геометрические фигуры
- Нейросети
- Задача на паттерн Компоновщик
- Заключение

  Декоратор


- Обзор
- Декораторы функций в Python
- Классические декораторы
- Динамические декораторы
- Задача на паттерн Декоратор
- Заключение

  Фасад (Facade)


- Обзор
- Фасад
- Задача на паттерн Фасад
- Заключение

  Приспособленец (Flyweight)


- Обзор
- Пользовательские имена
- Форматирование текста
- Задача на паттерн Приспособленец
- Заключение

  Прокси (Proxy)


- Обзор
- Защитный прокси
- Виртуальный прокси
- Прокси VS Декоратор
- Задача на паттерн Прокси
- Заключение

  Цепочка ответственности (Chain of Responsibility)


- Обзор
- Цепочка методов
- Разделение команд и запросов (CQS)
- Брокерская цепочка
- Задача на паттерн Цепочка ответственности
- Заключение

  Команда (Command)


- Обзор
- Команда
- Компоновщик и команда
- Задача на паттерн Команда
- Заключение

  Интерпретатор


- Обзор
- Лексический анализ
- Парсинг
- Задача на паттерн Интерпретатор
- Заключение

  Итератор


- Обзор
- Итератор
- Свойства через список
- Задача на паттерн Итератор
- Заключение

  Медиатор


- Обзор
- Чат
- Медиатор с событиями
- Задача на паттерн Медиатор
- Заключение

  Снимок (Memento)


- Обзор
- Снимок
- Отмена и воспроизведение
- Задача на паттерн Снимок
- Заключение

  Наблюдатель (Observer)


- Обзор
- События
- Property Observers
- Property Dependencies
- Задача на паттерн Наблюдатель
- Заключение

  Состояние (State)


- Обзор
- Классическая реализация
- Машина состояний на словаре
- Машина состояний на switch
- Задача на паттерн Состояние
- Заключение

  Стратегия (Strategy)


- Обзор
- Стратегия
- Задача на паттерн Стратегия
- Заключение

  Шаблонный метод (Template Method)


- Обзор
- Шаблонный метод
- Задача на паттерн Шаблонный метод
- Заключение

  Посетитель (Visitor)


- Обзор
- Интрузивный посетитель
- Рефлексивный посетитель
- Классический посетитель
- Улучшенный классический посетитель
- Задача на паттерн Посетитель
- Заключение

  Заключение


- Заключение по курсу

Для кого этот курс

- Продвинутые студенты с курсов по питону - Python-разработчики, которые хотят изучить паттерны проектирования

Курс даёт всеобъемлющий обзор GoF паттернов (шаблонов) проектирования на практике на языке программирования Python.

Оставьте отзыв

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

обновлено: 19.09.2024

Оставьте заявку

Наши консультанты ответят на все вопросы
И помогут в выборе

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных