Программа
История и перенос прогресса
Итог занятия
Домашка — необязательно, вне таймера
Теория всех шагов программы по блокам. Открой тему, чтобы прочитать.
Как проходит занятие
Занятие — 10–90 минут: разминка по пройденному, новые шаги с короткой теорией и задачами, практика. У каждой задачи две попытки: с первой — 100 очков, со второй — 60, после второй ошибки показывается правильный ответ. Дальше по программе — если решено 70 % заданий.
Задачи с числами генерируются заново при каждом повторе шага. Дробный ответ можно вводить через запятую, точку или дробью: 0,5, 0.5, 1/2. В тренажёре любая тема без таймера.
О курсе
Классы и объекты, инкапсуляция, наследование и полиморфизм, абстрактные классы, композиция, особые методы, dataclass, исключения, принципы DRY, KISS и SOLID, паттерны (стратегия, наблюдатель, фабрика, одиночка), тесты и моделирование предметной области на Python.
Программа курса: 35 уроков
Классы и объекты
- Класс и объект
- Методы и self
- __str__ и __repr__
- Инкапсуляция и property
- Атрибуты класса, classmethod, staticmethod
- Классы и объекты: смешанная тренировка
- Контроль: классы и объекты
Наследование и полиморфизм
- Наследование и super()
- MRO, isinstance и множественное наследование
- Полиморфизм и утиная типизация
- Абстрактные классы
- Композиция против наследования
- Наследование и полиморфизм: смешанная тренировка
- Контроль: наследование и полиморфизм
Особые методы, данные, исключения
- Сравнение объектов: __eq__, __lt__, __hash__
- Методы контейнеров и __call__
- Перегрузка операторов
- dataclass
- Исключения и свои классы ошибок
- Особые методы и данные: смешанная тренировка
- Контроль: особые методы, данные, исключения
Принципы проектирования
- DRY, KISS, YAGNI
- SOLID: SRP и OCP
- SOLID: LSP и ISP
- SOLID: DIP и внедрение зависимостей
- Принципы: смешанная тренировка
- Контроль: принципы проектирования
Паттерны, тесты, моделирование
- Паттерн «стратегия»
- Паттерн «наблюдатель»
- Паттерн «фабрика»
- Паттерн «одиночка» и чем он плох
- Тесты: assert и unittest
- Моделирование предметной области
- Паттерны, тесты, моделирование: смешанная тренировка
- Контроль: паттерны, тесты, моделирование