Язык программирования Python (углубленный курс)
Преподаватели
| Лектор | Иван Лущ | ||||
| Номер группы | Группа 1 | Группа 2 | Группа 3 | Группа 4 | Группа 1 (ЭАД) |
| Семинаристы | Хайбулин Даниэль | Михаил Федоров | Дарья Оникова | Андрей Новгородский | Федор Наумов |
Программа курса
| Packaging и tooling |
| Типы: почему и как |
| Тестирование и логирование |
| PDB, introspection и dis |
| Threading, GIL basics |
| Multiprocessing, IPC, subinterpreters, free-threading, subprocess |
| Async, coroutines, event loop |
| Дескрипторы |
Метаклассы и __init_subclass__
|
| Faster CPython: Adaptive Interpreter и JIT |
| Memory model, GC, weakref |
| Профилирование и performance |
| Cython, C-extensions, bindings |
Материалы курса
- Manytask
- Ссылка на репозиторий с задачами и лекциями
- Материал лекций
- Канал с анонсами по курсу
- Ссылка на чат
Система оценки
Итоговая оценка:
Oитог = 0,2 * Семинары + 0,5 * Задачи + 0,3 * Мок-интервью
- Семинары — активность на семинарах
- Задачи — регулярные ДЗ через manytask. Защита решений. Преподаватель вправе в любой момент семестра вызвать студента на устную защиту любой сданной задачи или группы задач. Студент обязан объяснить свое решение, работу кода и используемые языковые конструкции. Если студент не может дать связного объяснения по существу, баллы за всю соответствующую группу задач в manytask обнуляются; повторная сдача этих задач не восстанавливает балл. Если провалено больше одной защиты, то преподаватель вправе написать дисциплинарную записку за академические нарушения студента.
- Мок-интервью — устная форма контроля
Мок-интервью
Устная форма контроля в формате технического собеседования, имитирующая Python-интервью. Проходит на последних 2-3 лекциях семестра (декабрь).
Часть I. Теория
Интервьювер задаёт 4-5 открытых вопросов равномерно по блокам курса. Формат — открытые вопросы, требуют объяснения "почему". Примеры:
- почему list[Dog] нельзя передать вместо list[Animal], а Sequence[Dog] — можно?
- чем logger.error(exc) хуже logger.exception()?
Часть II. Разбор задач
Интервьювер выбирает несколько задач из сданных студентом. Студент рассказывает, как устроено его решение, почему выбрал именно такой подход, какие видит компромиссы, и отвечает на уточняющие вопросы.
Критерии оценивания
Каждая часть даёт до 5 баллов, итого 0-10.