@ArtemSh13
QA-инженер

Стоит ли использовать ООП для бота на Telebot?

Всем привет!

Во всех туториалах "Как написать telegram-бота, используя Telebot" (библиотека pyTelegramBotAPI), что я видел, используется процедурный подход: создаем объект telebot.TeleBot(token), а дальше просто описываем команды в виде функций, который дополняем декораторами из этого объекта. Максимум разносим определения этих функций по разным модулям.

В связи с этим вопрос: использовать ООП для данной задачи нецелесообразно? Стоит или нет, например, реализовывать каждую команду как отдельный класс вида

class SomeBotCommand:
    def __init__(self, message, bot: TeleBot, some_command_arg):
        self.message = message
        self.bot = bot
        self.some_command_arg = some_command_arg
  • Вопрос задан
  • 1518 просмотров
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
Ну почему бы и нет?
Вон, discord.py вообще реализует механизм когов (cogs), который позволяет заключать отдельные наборы поведений в класс, и подгружать/выгружать этот класс по ходу работы.
Нечто подобное можно построить на базе почти любой библиотеки чат-ботов, особенно если с выгрузкой заморачиваться не требуется.
Просто если у тебя только один набор связанных поведений, то и класс с обработчиками будет один - и смысл тогда?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы