← Questões de Engenharia de Software

Engenharia de Software · FEPESE · 2023

Questão comentada de Engenharia de Software

Quando desenvolvemos código baseado em uma arquitetura limpa, logo pensamos em princípios SOLID. Assinale a alternativa que exemplifica corretamente o OCP (princípio de Aberto/Fechado) em SOLID.

Gabarito: C

O OCP, ou Princípio Aberto/Fechado, diz que um sistema deve estar aberto para extensão e fechado para modificação. Na prática, isso significa que você tenta evitar mexer no que já funciona para incluir um comportamento novo; em vez disso, você cria uma forma de acrescentar novidades sem quebrar o código existente. É o famoso “não remendo o mesmo trecho toda vez”, porque toda alteração direta aumenta o risco de efeito colateral. Em arquitetura limpa, esse princípio aparece muito em pontos como interfaces, abstrações e uso de polimorfismo. Você deixa a estrutura pronta para receber novos comportamentos por adição, não por reescrita. Assim, o sistema fica mais estável, mais fácil de testar e com menos dor de cabeça nas evoluções. Por isso, a alternativa C está correta: ela descreve exatamente a ideia de permitir mudança pela adição de novo código, sem precisar alterar o que já existe. Isso é a essência do OCP. As demais alternativas descrevem outros princípios do SOLID, como responsabilidade única, substituição de Liskov, inversão de dependência e segregação de interfaces. Em provas, a banca costuma cobrar essas definições quase como “dicionário do SOLID”. Se você memorizou a frase-chave do OCP, você mata a questão com tranquilidade: aberto para extensão, fechado para modificação.

Continue treinando

Questões relacionadas