МОВС Прикладной Python, (2023-24 уч. год, 2-3 модули) — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Строка 44: Строка 44:
 
| style="background:#eaecf0;" | '''2''' [[https://www.youtube.com/watch?v=GS2MvlXqLDg&list=PLmA-1xX7IuzADGz3hSgPPm6ib11Z0HSML Запись]] || [[https://colab.research.google.com/drive/1VlGdcMNSwFFeFy0LuQKPiy-_EKu-EIQr?usp=sharing Ноутбук]] [[https://docs.google.com/presentation/d/1Ik28hL_gLFD3MFQibtrJt3KYplaszQ67WwLrJaZJScY/edit#slide=id.gf1e88225b8_0_69 Слайды]] Асинхронность 2: основы асинхронного программирования, awaitable-объекты, Event Loop, Asyncio, Aiohttp || 13.11.23 ||  
 
| style="background:#eaecf0;" | '''2''' [[https://www.youtube.com/watch?v=GS2MvlXqLDg&list=PLmA-1xX7IuzADGz3hSgPPm6ib11Z0HSML Запись]] || [[https://colab.research.google.com/drive/1VlGdcMNSwFFeFy0LuQKPiy-_EKu-EIQr?usp=sharing Ноутбук]] [[https://docs.google.com/presentation/d/1Ik28hL_gLFD3MFQibtrJt3KYplaszQ67WwLrJaZJScY/edit#slide=id.gf1e88225b8_0_69 Слайды]] Асинхронность 2: основы асинхронного программирования, awaitable-объекты, Event Loop, Asyncio, Aiohttp || 13.11.23 ||  
 
|-
 
|-
| style="background:#eaecf0;" | '''3''' [[ Запись]] || [[https://colab.research.google.com/drive/1w0UpJuksiCmGjhlrKv0r38lIy_M_S3oa?usp=sharing Ноутбук]] Продвинутый ООП: магические методы, property, статические методы, методы класса. Класс как пространство имён || 23.11.23 ||
+
| style="background:#eaecf0;" | '''3''' [[ Запись]] || [[https://colab.research.google.com/drive/1w0UpJuksiCmGjhlrKv0r38lIy_M_S3oa?usp=sharing Ноутбук]] [[https://docs.google.com/presentation/d/13qPkZiUfKytuFOkx6BKrp6x3VJ3KZFb9wz2AAyh8jjc/edit?usp=sharing Слайды]] Продвинутый ООП: магические методы, property, статические методы, методы класса. Класс как пространство имён || 23.11.23 ||
 
|-
 
|-
| style="background:#eaecf0;" | '''4''' [[ Запись]] || [[https://colab.research.google.com/drive/1fXNkVLig7zq8KCLqvi8d0j-FD6OGKG9Z?usp=sharing Ноутбук]] Продвинутый ООП: абстрактные классы, классы-декораторы. Нововведения Python 3.8+. Работа с виртуальным окружением. [[https://colab.research.google.com/drive/1pGsKUPzlTxb-E2ovY-odUBG0XF0etdmv Фреймворк Streamlit]] || 24.11.23 ||
+
| style="background:#eaecf0;" | '''4''' [[ Запись]] || [[https://colab.research.google.com/drive/1fXNkVLig7zq8KCLqvi8d0j-FD6OGKG9Z?usp=sharing Ноутбук]] [[https://docs.google.com/presentation/d/13qPkZiUfKytuFOkx6BKrp6x3VJ3KZFb9wz2AAyh8jjc/edit#slide=id.g29e60f88531_0_130 Слайды]] Продвинутый ООП: абстрактные классы, классы-декораторы. Нововведения Python 3.8+. Работа с виртуальным окружением. [[https://colab.research.google.com/drive/1pGsKUPzlTxb-E2ovY-odUBG0XF0etdmv Фреймворк Streamlit]] [[https://t.me/c/1987318607/168/227 больше ссылок тут]] || 24.11.23 ||
 
|-
 
|-
| style="background:#eaecf0;" | '''5''' [[ Запись]] || [[https://colab.research.google.com/drive/12JNmFYnvGkECAMIaYJDIbfKAF6NZ31cj?usp=sharing Ноутбук]] GIL. Процессы и потоки. Основы синхронизации. Способы ускорения вычислений применения функций к датасетам. Именованные кортежи и dataclass ||  
+
| style="background:#eaecf0;" | '''5''' [[ Запись]] || [[https://colab.research.google.com/drive/12JNmFYnvGkECAMIaYJDIbfKAF6NZ31cj?usp=sharing Ноутбук]] [[https://docs.google.com/presentation/d/1bJ9YvTy2Sw2TuWsoN-o7x-AEnkZCcfK6RNHhdVKU-xU/edit?usp=sharing Слайды]] GIL. Процессы и потоки. Основы синхронизации. Способы ускорения вычислений применения функций к датасетам. Именованные кортежи и dataclass ||  
 
|-
 
|-
 
| style="background:#eaecf0;" | '''6''' [[ Запись]] || [[ Ноутбук]] Telegram-боты, Aiogram, деплой бота на сервер ||  ||  
 
| style="background:#eaecf0;" | '''6''' [[ Запись]] || [[ Ноутбук]] Telegram-боты, Aiogram, деплой бота на сервер ||  ||  

Версия 00:27, 1 декабря 2023

О курсе

В данном курсе изучаются основные инструменты и подходы, которые используются в backend-разработке современных сервисов на языке Python.
Курс предназначен для освоения веб-фреймворка FastAPI и всей сопутствующей экосистемы: асинхронное программирование, тестирование, SQLAlchemy, Redis, Celery, Pytest, логирование, мониторинг.

Занятия проводятся в [Zoom] по пятницам в 19:40

Контакты

Чат курса в TG: https://t.me/+LH8XQqZ7iTxkNWVi

Преподаватель: Горшков Сергей

Автор программы: Паточенко Евгений Анатольевич

Anytask: 1WBZLkf

Ассистенты

Ассистент Контакты
Сергей Осипович @ml_enjoyer
Гордей Зуев @WhiteShape
Анна Лазарева @annalzrv
Илья Сокур @ilias_ml
Милана Алёшкина @milashkinaa

Материалы курса

Плейлист курса на YouTube: https://www.youtube.com/playlist?list=PLmA-1xX7IuzADGz3hSgPPm6ib11Z0HSML

[Презентация с интро курса]

Занятие Тема Дата Ссылки
1 [Запись] Ноутбук [Слайды] Асинхронность 1: генераторы, конструкция yield from. От генераторов к асинхронности. Обработка исключений в Python 03.11.23
2 [Запись] [Ноутбук] [Слайды] Асинхронность 2: основы асинхронного программирования, awaitable-объекты, Event Loop, Asyncio, Aiohttp 13.11.23
3 Запись [Ноутбук] [Слайды] Продвинутый ООП: магические методы, property, статические методы, методы класса. Класс как пространство имён 23.11.23
4 Запись [Ноутбук] [Слайды] Продвинутый ООП: абстрактные классы, классы-декораторы. Нововведения Python 3.8+. Работа с виртуальным окружением. [Фреймворк Streamlit] [больше ссылок тут] 24.11.23
5 Запись [Ноутбук] [Слайды] GIL. Процессы и потоки. Основы синхронизации. Способы ускорения вычислений применения функций к датасетам. Именованные кортежи и dataclass
6 Запись Ноутбук Telegram-боты, Aiogram, деплой бота на сервер
7 Запись Ноутбук Тестирование 1: assert'ы, параметризация, фикстуры
8 Запись Ноутбук Тестирование 2: Selenium, моки, стабы
9 Запись Ноутбук SQL: PostgreSQL, запросы к БД из-под Python, оконные функции
10 Запись Ноутбук SQLAlchemy
11 Запись Ноутбук FastAPI 1: API, Pydantic, архитектура веб-приложения
12 Запись Ноутбук FastAPI 2: Redis, Celery, логирование, мониторинг
13 Запись Ноутбук Собираем всё вместе: PostgreSQL + SQLAlchemy + Streamlit + FastAPI + Celery + Redis + Docker + VPS

Записи консультаций

Формула оценивания

Оценка = 0.15*ОДЗ-1 + 0.15*ОДЗ-2 + 0.3*ОПроект + 0.4*ОИтоговый проект


Домашние задания

  1. Разработка интерактивного дашборда с использованием фреймворка Streamlit
  2. Тестирование веб-сервиса

Проекты

  1. Разработка Telegram бота для презентации модели машинного обучения
  2. Итоговый. Реализация веб-сервиса с использованием фреймворка FastAPI

Литература

  • Лучано Рамальо: Python. К вершинам мастерства. 2-е издание, 2022 г., издательство ДМК Пресс
  • Мэтью Фаулер: Asyncio и конкурентное программирование на Python, 2023 г., издательство ДМК Пресс