Não seria mais interessante fazer o uso de funções invés de classes, uma vez que JS suporta o paradigma funcional e a incentivo para o uso desse?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Não seria mais interessante fazer o uso de funções invés de classes, uma vez que JS suporta o paradigma funcional e a incentivo para o uso desse?
Oi, Delano! Como vai?
O que acontece por de baixo dos panos é o uso de Prototypes. Desde o Ecmascript 2015, o JavaScript ao menos permite o uso de classes, e muito vem fazendo para que essa sintaxe seja mais facilmente utilizada nos projetos (como a introdução de atributos privados e o uso de decorators, que ainda estão em fase de desenvolvimento).
Há quem diga que por causa do uso de Prototypes, o uso de classes prejudique a performance, mas é uma taxa tão baixa que na maioria dos projetos chega a ser insignificante.
Mas, o que eu acho que mais pesa em utilizar classes no back-end, com JavaScript, é a tradição de outras linguagens que suportam o paradigma Orientado a Objetos. Assim, podemos usar de padrões de projeto, como MVC, de forma clara. Isso facilita a leitura do código, e a escrita.
Já vi códigos de back-end que utilizavam funções e algumas características de MVC, e o código ficava muito mais confuso. Principalmente por causa da necessidade de herança, por exemplo.
Indico este artigo também, que fala um pouco mais do que eu falei: Class VS Function - Qual o jeito correto de escrever Javascript no mundo moderno?.
No fim das contas, é como o próprio artigo citado diz: depende. Talvez seu código funcione melhor no paradigma funcional. O benefício do JavaScript é justamente que, por ser uma linguagem flexível, você vai poder tomar essas decisões sem muita limitação.
Bons estudos!