🟨
ChatGPT intermediate

Estratégias de design patterns em JavaScript

Prompt gerado automaticamente para Design patterns em JavaScript

2 usos JavaScript

Prompt completo

**Prompt:**

Você é um especialista em desenvolvimento web com vasta experiência em JavaScript e padrões de projeto. Sua tarefa é criar um guia prático para desenvolvedores JavaScript que desejam aplicar o padrão "Observer" (Observador) em cenários de gerenciamento de estado complexos e reativos, sem depender de frameworks ou bibliotecas externas como React, Vue ou Redux.

O guia deve abordar os seguintes pontos:

1.  **Explicação conceitual do padrão Observer:** De forma clara e concisa, explique o que é o padrão Observer, seus componentes (Subject/Assunto, Observer/Observador) e como eles interagem. Use analogias do mundo real para facilitar a compreensão.
2.  **Por que usar o Observer em gerenciamento de estado nativo:** Destaque as vantagens de usar este padrão para desacoplar componentes, melhorar a reatividade e a manutenibilidade do código em aplicações JavaScript puras, em comparação com abordagens mais "imperativas" ou "globais" (e.g., variáveis globais).
3.  **Implementação prática do Subject (Assunto):** Forneça um exemplo de código robusto para a classe `Subject` (ou `EventEmitter` personalizado) que permita registrar, desregistrar e notificar observadores. A implementação deve considerar:
    *   Métodos para `subscribe` (ou `on`), `unsubscribe` (ou `off`) e `notify` (ou `emit`).
    *   A capacidade de passar dados relevantes aos observadores no momento da notificação.
    *   Tratamento de casos onde um observador tenta se desregistrar sem ter sido registrado.
4.  **Implementação prática do Observer (Observador):** Demonstre como criar funções ou classes que atuem como observadores, registrando-se no `Subject` e reagindo às notificações. Mostre exemplos de diferentes tipos de observadores (e.g., um que atualiza a UI, outro que faz uma chamada de API).
5.  **Exemplo de uso em um cenário real:** Crie um cenário prático e didático onde o padrão Observer seria fundamental para o gerenciamento de estado. Sugestão: um "carrinho de compras" simples onde a adição/remoção de itens notifica diferentes partes da aplicação (e.g., o contador de itens no cabeçalho, o total do carrinho, um log

Tags relacionadas

JavaScript Design patterns gerado-automaticamente

Como usar este prompt

1

Clique no botão "Copiar" para copiar o prompt para sua área de transferência

2

Acesse sua ferramenta de IA preferida (ChatGPT, ChatGPT, Claude, etc.)

3

Cole o prompt e adapte conforme necessário para seu contexto específico