нет понятия какой подход лучше. Функция - выгоднее по ресурсам, поскольку класс - всего лишь синтаксическая карамель. Класс выгоднее по читабельности. Общее правило - есть стейт - это класс, нет стейта - это функция. Второе правило - всегда пишешь функцию, при небходимости - рефакторишь в класс. Третье правило - всегда посылаешь раздающих правила и слушаешь своего лида)))