DEV Community

Gustavo Inocencio
Gustavo Inocencio

Posted on

2

Diferenças entre Observer Pattern e Producer/Consumer Pattern

Normalmente essa é uma questão utilizada em uma entrevista técnica.
Mas afinal, existe diferença? Porque olhando superficialmente parecem o mesmo.
Começando com a definição do padrão Observer, existe um objeto chamado de subject que tem observadores e onde,para toda mudança nesse objeto os observadores são notificados. Nesse caso, a notificação é instantânea, em inglês chamada de "per object syncronization"
Para o padrão Producer/Consumer ou Publisher/Subscriber a única sincronização necessária é que o consumer fique aguardando quando não existem notificações no buffer e o Producer aguarde quando o buffer estiver cheio, mas a "per object syncronization" não é necessária. O Produtor (producer) pode gerar vários objetos de mudança antes que o consumidor (consumer) as consumam e este pode consumir tudo de uma vez. Enfim, para esse caso a notificação imediata não é necessária e o Producer não precisa saber quais são seus seguidores.

Hostinger image

Get n8n VPS hosting 3x cheaper than a cloud solution

Get fast, easy, secure n8n VPS hosting from $4.99/mo at Hostinger. Automate any workflow using a pre-installed n8n application and no-code customization.

Start now

Top comments (0)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More