PROкод: курс по ООП на Python
О чём курс
Александр Владимиров разбирает принципы объектно-ориентированного программирования на Python: от базового синтаксиса классов до работы дескрипторов, датаклассов и оптимизации памяти.
О чём курс
Курс продолжает линейку обучающих программ автора по языку Python и ориентирован на переход от процедурного написания функций к проектированию объектной архитектуры. Материал охватывает базовые компоненты классов, особенности вызова конструктора и методы жизненного цикла объектов, а также принципы инкапсуляции и разграничения доступа к внутренним данным.
Отдельное внимание уделено поведению объектов через магические методы: перегрузке арифметических операторов, логике сравнения, эмуляции функций и коллекций, созданию собственных итераторов. В продвинутой части рассматриваются множественное наследование, механизм вызова методов через super(), оптимизация потребления памяти с помощью __slots__, перехват и проектирование пользовательских исключений, а также автоматическая генерация кода через декоратор @dataclass.
Теоретический материал подкреплён решением практических задач: в курс включено более 500 заданий с разбором прикладных ситуаций, а также сквозные испытания по проектированию архитектуры сервиса заказов и симуляции умного города.
Кому подойдёт
Программа рассчитана на тех, кто уже знает синтаксис Python, умеет объявлять переменные, писать функции, использовать циклы и условия. Материал ориентирован на следующие категории слушателей:
- разработчики, которым необходимо освоить или систематизировать принципы ООП для рабочих задач;
- начинающие программисты и самоучки, планирующие переход к веб-фреймворкам вроде Django или FastAPI;
- студенты технических направлений, изучающие программирование на Python;
- преподаватели, подбирающие структурированные примеры и задачи для объяснения объектной модели.
Что внутри
Обучение выстроено по нарастающей сложности: знакомство с классами, экземплярами и аргументом self сменяется темами защиты атрибутов и создания дескрипторов. Далее детально прорабатываются интерфейсы взаимодействия объектов между собой, правила построения иерархий и абстракций.
Практический блок содержит тесты, упражнения на написание кода и комплексные архитектурные проекты. Для закрепления пройденного предусмотрены контрольные модули, моделирующие реальные сценарии разработки, включая обработку ошибок при передаче данных и автоматизацию структур с помощью field().
Что даёт курс
По словам автора, прохождение программы формирует системное понимание объектной архитектуры и готовит к разработке масштабных проектов. Слушатели получают практический опыт реализации классов, управления ресурсами через контекстные менеджеры и создания гибких иерархий. После успешного завершения всех заданий выдаётся сертификат платформы Stepik.
Программа обучения
Вступление: Как проходить курс и зачем он вообще нужен Введение и основы ООП: Почему код без объектов уже не котируется? Архитектура мира: создаём собственные типы данных Строим собственный мир: классы и объекты Внутренний мир объектов: личные секреты и их хранители Язык объектов: кто такой self на самом деле? От появления до исчезновения: как живут и умирают объекты Методы, живущие вне объектов: @classmethod и @staticmethod Конструкторы 80-го уровня: new и паттерн-невидимка Пит-стоп: лёгкие задачки: Объектная передача данных: от станции к станции Личный дневник объектов: контроль и защита данных: Личные границы: как защитить данные от посторонних Секретные окна: умные свойства в Python Дескрипторы: настройка поведения атрибутов UserProfile: современный контроль данных в классе Магические методы: настройка поведения объектов: Вызови меня! Как объекты притворяются функциями Перехват доступа к атрибутам: getattr, getattribute, setattr.... Когда объект становится истиной Глянцевый вид: как объекты рассказывают о себе Личные полки: как объекты выдают и прячут свои элементы Вперёд по шагам: магия итераторов Маленькие, да удаленькие: редкие, но полезные магические методы Арифметика, сравнения и уникальность: Считаем по-своему: арифметика объектов Сравнение с характером: логика отношений Печать уникальности: зачем объекту hash Испытание: магические методы на практике: Магазин будущего: объектная магия в действии Наследование и структура классов: Наследование: повторное использование кода Наследование и доступ: private, protected и переопределения Зовём предков: сила super() Проверка наследования: isinstance и issubclass Абстракции и полиморфы: объект на все руки Множественное наследие и порядок в хаосе Испытание: классовая иерархия: Проектирование и развитие OrderCore: практика ООП Оптимизация и расширенные возможности наследования: slots: экономим память и ускоряем работу Испытание: Архитектура и маршрутизация: Мир Механиков Исключения и управление ресурсами: Когда всё идёт не так: ловим ошибки Контроль до конца: else и finally на практике Вперёд по стеку: пробрасываем исключения выше Свои ошибки: создаём пользовательские исключения Ресурсы под контролем: магия with Испытание: исключительный случай: Центр обработки заказов “Мир” Data Classes - классы с автопилотом: Автоматические классы: знакомство с @dataclass Тонкая настройка автоклассов: field, init и магия Наследуем и улучшаем: продвинутые Data Classes Data Classes в действии: сериализация и интеграция Разные задачи для закрепления: Задачи для закрепления 1 Задачи для закрепления 2 Заключительное испытание: Архитектура "Умного города" Итоги курса: Заключение
Теги курса
Другие материалы автора 12
АВ Александр Владимиров Все материалыОтзывов пока нет. Будьте первым!
Этот курс сейчас в процессе организации складчины. Нажмите кнопку «Записаться» и ожидайте старта — вам придёт уведомление. Когда складчина стартует, в карточке курса будет указан актуальный взнос. Текущая цена пока в процессе формирования и может отличаться от финальной.
Да, мы стремимся, чтобы финальный взнос был не больше ≈10% от оригинальной цены курса. Чем больше участников записывается в складчину, тем ниже выходит взнос для каждого.
Нажмите кнопку «Записаться» и авторизуйтесь на сайте через email (через ту же почту, которую будете использовать для входа). В личном кабинете вас будут ждать инструкции, как пригласить других участников — чем больше людей записалось, тем быстрее стартует складчина и тем ниже взнос. Как только складчина готова к приобретению, вам придёт уведомление.