Um Tribunal Regional do Trabalho está desenvolvendo um siste...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: B - Observer.
Tema central da questão: A questão aborda padrões de projeto de software, que são soluções gerais reutilizáveis para problemas comuns em engenharia de software. Neste caso, o foco está em um sistema de notificações para um sistema de gestão de processos judiciais.
Resumo teórico: O padrão de projeto Observer é utilizado para permitir que um objeto (o "sujeito") notifique automaticamente uma lista de outros objetos (os "observadores") sobre qualquer mudança em seu estado. Ele é ideal para sistemas onde você precisa que partes do sistema sejam notificadas sobre eventos, como atualizações em dados ou mudanças de estado, sem que o sujeito precise saber detalhes sobre os observadores.
Este padrão é particularmente relevante quando se deseja desacoplar a lógica de notificação da lógica de negócios, permitindo que novos tipos de notificações sejam adicionados facilmente, sem alterar o sistema existente. Essa flexibilidade é crucial em ambientes que exigem constante evolução, como sistemas judiciais.
Justificativa da alternativa correta: O Observer é o padrão mais adequado para implementar um sistema de notificação flexível. Ele permite que você adicione novos observadores ou novos tipos de eventos sem modificar o sujeito, mantendo o sistema modular e fácil de manter.
Análise das alternativas incorretas:
- Singleton: Este padrão garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global a ela. Não é adequado para sistemas de notificação, pois não trata de notificações ou eventos, mas sim de controle de instâncias.
- Strategy: Este padrão define uma família de algoritmos, encapsula cada um deles e os torna intercambiáveis. É usado para variar o comportamento de uma classe, não para notificação de eventos.
- Factory Method: O padrão Factory Method é usado para criar objetos sem especificar a classe exata do objeto que será criado. Ele é mais sobre instanciação de objetos do que sobre notificação de eventos.
- Decorator: Este padrão permite que o comportamento de um objeto seja estendido dinamicamente. Ele é usado para adicionar funcionalidades a objetos, não para notificação de eventos.
Estratégias para interpretação: Ao responder questões sobre padrões de projeto, é importante focar no problema que se deseja resolver e no comportamento desejado do sistema. Identifique palavras-chave no enunciado, como "flexível" e "notificação", que podem indicar o uso de determinados padrões.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Letra B
O padrão Observer (Observador) é ideal para situações em que um objeto (chamado de sujeito) precisa notificar automaticamente outros objetos (chamados de observadores) sempre que ocorre uma mudança de estado ou evento. Isso se aplica perfeitamente a sistemas de notificações de eventos processuais, como:
- Novos documentos apresentados,
- Audiências agendadas,
- Decisões publicadas.
Com o padrão Observer:
- Você pode adicionar novos tipos de notificações sem modificar o código do sistema principal.
- Os observadores se registram no sujeito, e quando um evento acontece, o sujeito notifica todos os observadores automaticamente.
- Singleton: Garante que exista apenas uma instância de uma classe — não serve diretamente para notificações.
- Strategy: Permite alterar o comportamento de um algoritmo em tempo de execução — usado para algoritmos intercambiáveis.
- Factory Method: Cria objetos sem especificar a classe exata — útil para instanciar tipos, mas não para notificação.
- Decorator: Adiciona funcionalidades a objetos de forma dinâmica — usado para extensão de comportamento, não para notificação.
@reviseodireito
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo