$ sudo teach|
    $ sudo teach|
    IT school
  • Telegram
  • Партнёрам
  • Все курсы
$ sudo teach IT
OOO "SALEPROFIT"Контакты и реквизитыIT-Park Logo

Школа

  • Блог
  • Проверить сертификат

Сотрудничество

  • Стать учителем
  • Партнёрская программа
  • О проекте

Право

  • Оферта
  • Политика конфиденциальности

© 2023–2026 $ sudo teach IT™. All Rights Reserved. Public user contributions licensed under CC BY-SA 4.0 license with attribution required
TelegramGitHubYouTube

Статьи по теме

Декораторы в Python: от синтаксического сахара до функциональных инструментов

Декораторы в Python: от синтаксического сахара до функциональных инструментов

Разбираем декораторы изнутри: как они работают на уровне замыканий, зачем нужен functools.wraps и как писать декораторы с аргументами. Примеры из реального кода — кэширование, логирование, контроль доступа.

Как устроен сборщик мусора в CPython: трассировка объектов и циклические ссылки

Как устроен сборщик мусора в CPython: трассировка объектов и циклические ссылки

Погружаемся в механизм reference counting и cyclic garbage collector — смотрим на исходный код CPython, пишем тесты и выясняем, когда объект действительно удаляется из памяти.

Метаклассы в Python: что это такое и когда они действительно нужны

Метаклассы в Python: что это такое и когда они действительно нужны

Разбираем внутреннее устройство метаклассов на практических примерах — от создания собственного метакласса до реальных сценариев применения в больших проектах. Объясняем, почему это не магия, а инструмент с конкретными задачами.

AI-помощник
Обновлен 14.07.2026

Senior Python

Senior Python: классы под микроскопом — погружение во внутреннее устройство CPython для middle/senior: от декораторов и метаклассов до байткода и GC. Разбор исходников языка, трассировки и тесты к каждому уроку.

Практические задания
Помощь от учителя
Поддержка 24/7
Senior Python


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

26 разделов • 47 уроков

1

Введение

1.1. Как проходить курс
1.2. Почему это отличает Senior от Middle
2

Декораторы классов и через классы

2.1. Class Decorators: @decorator над классом
2.2. Декораторы через __call__: параметризованные и stateful декораторы
3

Магические методы — жизненный цикл и протоколы объекта

3.1. Рождение объекта: __new__, __init__, __call__
3.2. Управление атрибутами: __getattr__, __getattribute__, __setattr__, __delattr__
3.3. Представление и поведение контейнера: __repr__, __str__, __len__, __iter__, __next__
3.4. Мост к контекстным менеджерам: __enter__, __exit__
4

Дескрипторы

4.1. Протокол дескрипторов: __get__, __set__, __delete__, __set_name__
4.2. Дескрипторы в реальном мире: property, ORM, Pydantic, cached_property
5

Метаклассы

5.1. type, class Meta(type) и жизненный цикл создания класса
5.2. Метаклассы на практике: Singleton, автоматическая регистрация, ORM
6

__init_subclass__

6.1. __init_subclass__ как альтернатива метаклассам
7

Context Manager

7.1. Протокол вручную: __enter__, __exit__
7.2. contextlib: @contextmanager, ExitStack, async-версии
8

Generators

8.1. yield, ленивые вычисления, полный протокол генератора
8.2. yield from, делегирование и генераторные конвейеры
9

Async

9.1. Event loop и корутины изнутри
9.2. async for, async with, асинхронные генераторы
9.3. Практика: TaskGroup, отмена задач, типичные ошибки
10

Глубокая типизация

10.1. Self, TypeVar, Generic — обобщённые типы
10.2. ParamSpec, Concatenate, overload — типизация функций и декораторов
10.3. Protocol — структурная типизация
10.4. TypedDict, Literal, Annotated, Final, ClassVar
11

__slots__

11.1. __slots__: память, скорость, ограничения
12

Dataclass

12.1. dataclass снаружи: field, __post_init__, сравнение, заморозка
12.2. Как dataclass устроен внутри
13

Enum

13.1. Enum, IntEnum, Flag и метакласс EnumMeta
14

Система импортов

14.1. sys.modules, importlib и как работает import изнутри
14.2. Свои finder/loader и динамические импорты
15

MRO

15.1. super(), множественное наследование и C3-линеаризация
16

Weakref

16.1. Слабые ссылки: weakref
17

Garbage Collector

17.1. Подсчёт ссылок, циклы и модуль gc
17.2. Настройка GC и диагностика памяти в проде
18

AST

18.1. ast: разбор и обход дерева кода
18.2. Трансформация кода через AST
19

Байткод

19.1. dis и что такое байткод CPython
19.2. Eval loop, оптимизации и производительность
20

Inspect

20.1. inspect: полная интроспекция объектов
21

Dynamic Class Creation

21.1. type(...) и создание классов в рантайме
22

Monkey Patching

22.1. Замена методов и объектов на лету
23

Proxy Objects

23.1. Объекты-перехватчики
24

Registry Pattern

24.1. Реестр: как Django находит модели, а FastAPI — роуты
25

Plugin Architecture

25.1. Архитектура плагинов: точки расширения
25.2. entry_points и промышленные плагинные системы
26

Заключение

26.1. Благодарности и итоги курса
26.2. Roadmap: куда расти дальше

Преподаватели

Изучите преподавательский состав

avatar

Команда $ sudo teach IT

Эксперт

Опытные преподаватели, научные руководители и их помощники ежедневно работают над созданием и улучшением курсов платформы!


Отзывы о курсе

0 отзыва

Войдите в аккаунт, чтобы оставить отзыв о курсе

Доступ навсегда
24/7 Support
python