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

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Строка 90: Строка 90:
 
* Мэтью Фаулер: Asyncio и конкурентное программирование на Python, 2023 г., издательство ДМК Пресс
 
* Мэтью Фаулер: Asyncio и конкурентное программирование на Python, 2023 г., издательство ДМК Пресс
 
Курс 1-2 модуля [[http://wiki.cs.hse.ru/%D0%9C%D0%9E%D0%92%D0%A1_%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D1%8B_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%BD%D0%B0_Python_(%D0%9C%D0%9C%D0%9E%D0%92%D0%A123,_1-2_%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B8) Основы программирования на Python]]
 
Курс 1-2 модуля [[http://wiki.cs.hse.ru/%D0%9C%D0%9E%D0%92%D0%A1_%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D1%8B_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%BD%D0%B0_Python_(%D0%9C%D0%9C%D0%9E%D0%92%D0%A123,_1-2_%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B8) Основы программирования на Python]]
* [Вики МОВС http://wiki.cs.hse.ru/%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B8_%D0%B2%D1%8B%D1%81%D0%BE%D0%BA%D0%BE%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B#.D0.9D.D0.B0.D0.B1.D0.BE.D1.80_.22.D0.B2.D0.B5.D1.81.D0.BD.D0.B0_2021.22]
+
* [http://wiki.cs.hse.ru/%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B8_%D0%B2%D1%8B%D1%81%D0%BE%D0%BA%D0%BE%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B6%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B#.D0.9D.D0.B0.D0.B1.D0.BE.D1.80_.22.D0.B2.D0.B5.D1.81.D0.BD.D0.B0_2021.22 Вики МОВС]

Версия 23:49, 8 февраля 2024

О курсе

В данном курсе изучаются основные инструменты и подходы, которые используются в 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: [YouTube-playlist]

Презентация с интро курса: [Слайды]

Занятие Тема Дата Ссылки
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 30.11.23
6 [Запись] [Слайды] Работа с сетью, протокол HTTP. Продвинутые возможности работы с SQL: индексы, ограничения, views, транзакции, принципы ACID 08.12.23
7 [Запись] [Код] [Туториал] Telegram-боты, Aiogram, конечные автоматы 14.12.23
8 [Запись] [Слайды] [Заметки] Тестирование в Python 26.01.24
9 [Запись] [Слайды] [Ноутбук] Пример написания тестов. Оконные функции в SQL, запросы к базе данных из Python [Leetcode задачи на оконные функции. Кое-где они избыточны, но для практики полезно] 02.02.24
10 [Запись] [Код] FastAPI: пример API для инференса модели машинного обучения 07.02.24
11 Запись Ноутбук FastAPI 2: Redis, Celery, логирование, мониторинг. SQLAlchemy?? Selenium???
12 Запись Ноутбук ELK stack?
13 Запись Ноутбук Собираем всё вместе: PostgreSQL + SQLAlchemy + Streamlit + FastAPI + Celery + Redis + Docker + VPS

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

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

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


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

  1. Разработка интерактивного дашборда с использованием фреймворка Streamlit: условие. Дедлайн 13.12.2023 1:00
  2. Тестирование веб-сервиса: условие Дедлайн: 18.02.2024 23:59

Проекты

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

Литература

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

Курс 1-2 модуля [Основы программирования на Python]