Это зависит. Вы можете использовать классы, чтобы упростить функциональное программирование. В этом случае oop-код становится деталью реализации. Это также может быть метод оптимизации, поскольку все экземпляры класса могут использовать одни и те же экземпляры функций в классе.
Если вам нужна синтаксическая краткость чистого fp, то oop всегда будет мешать, но если вы просто хотите, чтобы ваш код был предсказуемым / тестируемым, тогда он не должен быть доминирующей парадигмой в вашей кодовой базе. Многие функциональные библиотеки используют классы под капотом.
Однако код, который вы разместили, для меня выглядит как упавший код. почему _ref вообще? Класс просто шум. Единственное, что здесь происходит, это
const getUserData = async (id) => {
const data = await db.collection(..).doc(id);
return data.map(doc => {
// some transformation
})
}
что, вероятно, лучше, чем
const getUserData = (id) => db.collection(..).doc(id)
.then((data) =>
data.map(doc => {
// some transformation
}
);
обратите внимание, что вы можете использовать метод .then класса обещаний, чтобы избежать императивного синтаксиса async / await