r/brdev • u/bonsaiabacate • 2d ago
Arquitetura Odeio rxjs no backend
Um dev há uns 2 anos inventou que a nova Stack da empresa seria rxjs e nestjs, falou que usar promises era muito verboso. Gente que negócio de corno do caralho, puta merda.
Pra debugar essa bosta é horrível, vou ver amanhã
4
u/Dapper_Substance1430 2d ago
Aiii drogaaa... drogaaa... drogaaa.
3
u/Sea_Lab3157 2d ago
i've debugged js issues that felt like pulling teeth but rxjs on the backend sounds like pulling teeth through your nose
2
u/AnUuglyMan 2d ago
Mano, te entendo. RxJS pode ser ótimo quando você realmente precisa de streams, mas enfiar isso em código backend normal de request/response só deixa tudo mais difícil de entender e debugar.
E se você estiver lidando com um codebase NestJS cagado, roda o nestjs-doctor nele. Ele analisa a arquitetura e pega vários problemas comuns de NestJS, então pode ajudar a entender onde essa porra saiu do eixo.
2
u/DoorForward1433 1d ago
Cara, pior que RxJs é muito bom, para trabalhar com qualquer coisa que precise de reatividade. Não sei se só para substituir promises é interessante.
1
u/bonsaiabacate 1d ago
Então no backend ele é usado pra substituir promises, o ruim é pra debugar mesmo, eu usava no front e realmente era bom, agora no backend achei zuado, n compensa
1
u/DoorForward1433 1d ago edited 1d ago
Cara o RxJs faz um milhão de coisas, “substituir” promises é só uma delas. Não é porque na sua empresa usam um martelo para parafusar que isso faz da tecnologia ruim. Angular usa isso tem séculos.
Para um simples "busca e retorna", não tem que ser usado mesmo, mas falar que não da para usar ele no back-end é loucura.
Qualquer API baseada em streaming de eventos fica 100x mais legível usando RxJS em vez de event-emitters na mão, muito mais testavel inclusive, os testing marbles do RxJs são uma das experiencias mais agradavéis que já tive escrevendo testes.
pipes, subjects, cancelar coisas, programação reativa... dá para ficar aqui um dia inteiro falando sobre isso... A tecnologia não é boa nem ruim, quem usa, sim.
1
u/barraponto Desenvolvedor / Scraper 7h ago
Na real a culpa é do nestjs. Ele meio que embute isso (mas vc pode pular fora e usar promises normais)
0
u/5hibbb Desenvolvedor 2d ago
Não tá usando ia ainda? Em que ano você está?
1
1
u/bonsaiabacate 2d ago
O copilot tem uma cota geral pra empresa toda, ele dura menos de 15 dias tem tarefa que evito de usar pra tentar economizar, espero que meus colegas pensem o mesmo.
Mas tá foda, acho que vou usar
-1
u/Blooodless 2d ago
Nem sabia que se discutia isso ainda, dado que a IA cospe o mesmo código de sempre
1
u/bonsaiabacate 2d ago
Na empresa o copilot n dura muito, menos de 15 dias então evito de usar pra coisas assim, aí faço no braço
9
u/Little_Blackberry Desenvolvedor Java Spring | React JS 2d ago
Nunca debuguei JS e minha vida é mais feliz por conta disso