Здравствуйте. Пишу бота для телеграм. Сейчас код выглядит примерно так:
bot.on('message', msg => {
someFunc(bot, redis, db, msg)
});
function someFunc(bot, redis, db, msg) {
//какие-то действия с Redis
//какие-то действия с БД
bot.sendMessage(msg.from.id, 'TExt');
}
Мне не нравится, что я передаю много переменных в функцию someFunc (со временем кол-во этих переменных возрастёт). И я решил воспользоваться замыканием:
function gen(bot) {
return send(id, text) {
bot.sendMessage(id, text)
}
}
Теперь мне не надо передавать в someFunc переменную bot. Вместо этого я буду вызывать функцию send(). Нормальная ли это практика? Не ухудшит ли это читаемость и поддержку кода?