Урок 88. Презентация проекта
⚡ Кратко: задания
Чек-лист проекта. Выполните все пункты, прежде чем приступать к презентации.
- Реализуйте оба сценария поиска с пагинацией по 10 фильмов.
- Настройте логирование всех запросов в MongoDB.
- Добавьте вывод топ-5 популярных и последних запросов.
- Разбейте код на модули, проверьте PEP8 и обработку ошибок.
- Подготовьте 5-минутную презентацию с демонстрацией работы.
Что запомнить: лучше сделать меньше, но качественно, чем много «на скорую руку».
Частая ошибка: оставлять подготовку к презентации на последние 10 минут.
📝 Чек-лист выполнения проекта
Сценарии поиска
- Поиск по ключевому слову работает и ищет по части названия фильма.
- Результат ограничен 10 фильмами.
- Пользователь может запросить следующие 10 результатов, пока они не закончатся.
- Поиск по жанру и диапазону годов работает корректно.
- Перед вводом жанра показывается список всех жанров.
- Перед вводом годов показываются минимальный и максимальный год в базе.
- Работа с пустыми результатами корректна: программа не падает и сообщает, что ничего не найдено.
Логирование в MongoDB
- Каждый поисковый запрос сохраняется в MongoDB.
- Имя коллекции соответствует шаблону
final_project_<group>_<full_name>. - В логе есть timestamp, тип поиска, параметры и количество результатов.
Статистика
- Выводится список из 5 популярных запросов (по частоте).
- Или выводится список из 5 последних уникальных запросов.
- Статистика читаема и понятна пользователю.
Стабильность
- При неправильном вводе программа не падает.
- При сбое подключения к базе выводится понятное сообщение.
- Программа корректно завершается по команде пользователя.
Оформление кода
- Код разделён на модули по ответственности.
- Соблюдается PEP8 (отступы, имена, длина строк).
- Нет дублирования кода.
- Функции не слишком длинные (рекомендуется не более 20–30 строк).
- Комментарии объясняют сложные места, а не очевидное.
🎤 Рекомендации по подготовке к презентации
- Продумайте сценарий демонстрации заранее — какие слова вводить, какие жанры и годы выбрать.
- Подготовьте «упавшую» базу на случай проблем: имейте под рукой скриншоты работы приложения.
- Потренируйтесь говорить по таймеру, чтобы уложиться в 5 минут.
- Перечитайте свой код и будьте готовы объяснить каждую функцию.
- Подготовьте ответы на вопросы: почему выбрана такая архитектура, как работают SQL-запросы, как строится агрегация в MongoDB.
Проверка понимания
Выберите один вариант ответа. После клика правильный ответ подсветится зелёным.
Вопрос 1
Что важнее всего в практическом задании?
Вопрос 2
Как безопаснее двигаться в практикуме?
Вопрос 3
Что делать, если решение не совпадает с ожидаемым результатом?
Вопрос 4
Какой стиль имён переменных обычно рекомендует PEP 8?
Вопрос 5
Зачем использовать f-strings в современном Python?
Вопрос 6
Когда полезен ранний возврат из функции?