1
resposta

Promisses vs Observables

Hey hey,

Tenho sempre usado as promisses desde as primeiras versões do angular. Procurando estudar mais sobre, esbarrei nos Observables.

Qual a diferença entre eles? Posso usar as promisses com async/await, com os observables também?

Em exemplo real, qual seria o mais indicado para cruds?

Estou com dificuldade em entendê-los.

1 resposta

Fala ai Renatão, tudo bem? Vamos lá:

Qual a diferença entre eles?

Tecnicamente falando é que os Observables podem emitir mais de uma valor enquanto as Promises podem emitir apenas um valor, ou seja, um Observable pode realizar varias emissões e vários valores, a Promise uma vez emitida e resolvida ela esta feita.

Observables também possuem bem mais funcionalidades e recursos do que Promises.

Posso usar as promisses com async/await, com os observables também?

Não, você não consegue fazer await de Observables, nesse caso teria que usar o .subscribe ou .toPromise para convertê-lo em Promise e ai sim realizar o await.

Em exemplo real, qual seria o mais indicado para cruds?

Isso vai depender muito de cada arquitetura, no caso do Angular eu recomendaria usar os Observables e aproveitar o que a RxJS tem à lhe oferecer.

Com a RxJS você consegue garantir uma reatividade na aplicação bem maior e usar mais o conceito e abordagens reativas.

Espero ter ajudado.