8 мелочей в Unity, которые экономят мне часы
Ничего сложного, просто штуки, которые я использую каждый день. Если вы только начинаете в Unity, половина из них сэкономит вам кучу нервов.
Первые боты у меня были одним файлом на 800 строк. Работало, но править было страшно. Сейчас каждый проект начинаю с одной и той же структуры, и вот она.
Даже если бот маленький, раскладываю сразу так:
Когда через полгода заказчик просит добавить раздел, я просто создаю новый файл в handlers и подключаю его. Ничего не ломается.
Токен бота лежит в .env, а .env добавлен в .gitignore. Однажды увидеть свой токен в публичном репозитории и бегать его перевыпускать хватает, чтобы запомнить навсегда.
В aiogram 3 у каждого файла с обработчиками свой Router, а в bot.py они просто подключаются по очереди. Так сразу видно, какой раздел за что отвечает, а порядок подключения решает, какой обработчик сработает первым.
Если бот задаёт вопросы по очереди (имя, телефон, что нужно), это делается через FSM, машину состояний. Не надо хранить шаги в словарях и глобальных переменных, это первое, что ломается, когда пользователей становится больше одного.
Подключаю logging сразу, ещё до первого обработчика. Когда клиент пишет «бот вчера вечером что-то не ответил», логи это единственный способ понять, что случилось.
На VPS бот у меня работает как служба systemd с автоперезапуском. Сервер перезагрузился или бот упал, systemd поднимет его сам. Для большинства ботов хватает обычного polling, вебхук ставлю, когда нагрузка реально большая.
Отдельные папки, токен в .env, роутеры, FSM для анкет, логи и systemd. Это не «правильно, потому что так написано в книжке», а то, что реально экономит время, когда бот живёт дольше месяца.
Сколько стоит такой бот под ключ, расписал в статье сколько стоит Telegram-бот.
Опишите её своими словами — отвечу, реально ли это, сколько займёт и сколько будет стоить. Оценка бесплатная. Услуги по теме — Telegram-боты и боты для MAX.
Ничего сложного, просто штуки, которые я использую каждый день. Если вы только начинаете в Unity, половина из них сэкономит вам кучу нервов.
Сайт может быть красивым и всё равно провалиться в первый же день, потому что форма не отправляет заявки. Перед сдачей я всегда прохожу…
Сейчас у меня 149 отзывов на Kwork, но начиналось всё с нуля, как у всех. Вот что я бы сказал себе в самом начале.