Skip to content

netology-code/fshpd-diplom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 

Repository files navigation

Дипломный проект профессии «Разработка на Python. Базовый курс»

EnglishCard

Цель проекта

Цель проекта - разработать Telegram-бот для изучения английского языка. Бот будет предлагать различные варианты слов и проверять их правильный перевод.

Вам предстоит:

  • разработать программу-бота на Python
  • спроектировать и реализовать базу данных (БД) для программы
  • настроить взаимодействие бота с Yandex API
  • написать документацию по использованию программы.

В результате выполнения этого задания вы:

  • получите практический опыт работы с Telegram и Yandex API
  • закрепите навыки работы с GitHub и программирования на языке Python
  • разработаете с нуля полноценный программный продукт, который можно будет добавить в портфолио разработчика.

Чеклист готовности к работе над проектом

  1. У вас должен быть установлен Python 3.9/3.10 и любая IDE. Мы рекомендуем работать с Pycharm.
  2. Настроен компьютер для работы с БД PostgreSQL.
  3. Установлен git и создан аккаунт на Github.
  4. Cоздан бот в Telegram:
  • инструкцию по созданию бота можно посмотреть здесь
  • за основу бота можно взять код из модуля main.py.

Если все этапы чеклиста пройдены, то можете стартовать работу над проектом. Успехов в работе!


Инструменты/ дополнительные материалы, которые пригодятся для выполнения задания

  1. Python + IDE(Pycharm)
  2. Git + Github
  3. Postgre + PgAdmin
  4. Статья по разработке бота в Telegram
  5. Инструкция по созданию бота в Telegram
  6. Основа бота - код из модуля main.py

Инструкция к работе над проектом

Необходимо разработать программу-бота, которая должна выполнять следующие действия:

  1. Заполнить базу данных общим набором слов для всех пользователей (цвета, местоимения и т.д.). Достаточно 10 слов.
  2. Спрашивать перевод слова, предлагая 4 варианта ответа на английском языке в виде кнопок.
  3. При правильном ответе подтверждать ответ, при неправильном - предлагать попробовать снова.
  4. У каждого слова должен быть пример использования. Пример использования можно получать из сервиса dictionaryapi.
  5. Должна быть реализована функция добавления нового слова.
  6. После добавления нового слова выводить сколько слов изучает пользователь.
  7. Новые слова не должны появляться у других пользователей.
  8. Должна быть реализована функция удаления слова.
  9. Удаление должно быть реальзовано персонально для пользователя.
  10. Работа с ботом после запуска должна начинаться с приветственного сообщения.
Вот пример такого сообщения Привет 👋 Давай попрактикуемся в английском языке. Тренировки можешь проходить в удобном для себя темпе.

Причём у тебя есть возможность использовать тренажёр как конструктор и собирать свою собственную базу для обучения. Для этого воспрользуйся инструментами Добавить слово➕ или Удалить слово🔙.

Ну что, начнём ⬇️

В качестве примера интерфейса бота можете воспользоваться следующим референсом:

Примерный дизайн бота

возможный интерфейс бота


Дополнительные требования к проекту (необязательные для получения зачёта):

  1. Реализовать категории слов (страны, средства передвижения и т.д.).
  2. Не повторять изученные слова.
  3. Реализовать «изученность» слова. Слово считается изученным, если его угадали 5 раз без ошибок.
  4. Реализовать напоминания раз в день изучение английского языка.

Правила сдачи работы

  • разработан бот и все части кода объединены в главной ветке (master/main);
  • в личном кабинете необходимо отправить ссылку на репозиторий с решением.

Критерии оценки

Зачёт по разработанному проекту может быть получен, если созданный программный продукт соответствует следующим критериям:

  1. Отсутствуют ошибки (traceback) во время выполнения программы.
  2. Результат программы записывается в БД. Количество таблиц должно быть не меньше трёх. Приложена схема БД.
  3. Программа добавляет новые слова в БД для каждого пользователя.
  4. Программа декомпозирована на функции/классы/модули/пакеты.
  5. Написана документация по использованию программы.
  6. Код программы удовлетворяет PEP8. Перед отправкой решения на проверку проверьте код с помощью линтеров.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages