No contexto de desenvolvimento de software orientado a objetos, a aplicação de princípios de design e padrões é fundamental para construir sistemas flexíveis e robustos. O princípio 'Open/Closed Principle' (OCP), um dos princípios SOLID, estabelece que as entidades de software (classes, módulos, funções, etc.) devem ser abertas para extensão, mas fechadas para modificação. Qual das opções abaixo ilustra de forma mais aderente a aplicação do OCP?
- A)Adicionar um novo 'if-else' em uma classe existente para tratar um novo tipo de processamento.
- B)Criar uma classe abstrata ou interface e estender/implementar classes concretas para novos comportamentos.gabarito
- C)Modificar diretamente o código de uma função para incluir novas funcionalidades.
- D)Duplicar o código de uma classe e alterar a cópia para suportar um novo requisito.
- E)Refatorar uma classe para que todos os seus métodos sejam estáticos e públicos.