O Tribunal de Justiça do Estado de Rondônia (TJRO) está desenvolvendo um novo sistema para integrar diferentes bases de dados judiciais e garantir maior interoperabilidade entre sistemas. Para isso, foi adotada uma abordagem orientada a objetos, com o uso de princípios como SOLID e padrões de projeto. Sobre os conceitos fundamentais de SOLID e padrões de projeto, assinale a afirmativa correta.
- A)O padrão Factory Method é indicado para evitar a criação de objetos em tempo de execução.
Errada, porque o Factory Method serve para desacoplar a criação do objeto, e não para evitar sua criação em tempo de execução.
- B)O padrão Singleton é utilizado para criar objetos que podem ser instanciados várias vezes durante a execução do programa.
Errada, porque o Singleton faz o oposto: busca garantir uma única instância da classe durante a execução.
- C)O princípio da responsabilidade única (SRP) determina que uma classe deve ter apenas uma razão para mudar, promovendo coesão.
Certa, porque o SRP estabelece que uma classe deve ter apenas uma razão para mudar, promovendo coesão.
- D)O princípio de segregação de interface recomenda que todas as classes utilizem interfaces únicas e extensas para consolidar suas dependências.
Errada, porque o ISP recomenda interfaces pequenas e específicas, e não interfaces únicas e extensas.
- E)O princípio de substituição de Liskov (LSP) recomenda que subclasses adicionarem comportamentos que alteram as funcionalidades das superclasses.
Errada, porque o LSP exige que subclasses possam substituir a superclasse sem alterar o comportamento esperado, não que adicionem mudanças que quebrem o contrato.
Gabarito: C
Em Programação Orientada a Objetos, SOLID funciona como um conjunto de boas práticas para deixar o sistema mais fácil de manter, testar e evoluir. A ideia não é enfeitar o código, mas evitar aquela bagunça clássica em que uma alteração pequena quebra três partes do sistema e ainda faz o programador chorar no café da manhã. O SRP, ou princípio da responsabilidade única, diz que uma classe deve ter apenas uma razão para mudar. Em outras palavras, cada classe deve cuidar de um objetivo bem definido, o que aumenta a coesão e reduz o acoplamento. Isso ajuda muito em sistemas grandes, como os que integram bases de dados e serviços diferentes, porque cada parte fica mais previsível. Por isso, o gabarito correto é a letra C. A afirmação está exatamente alinhada ao SRP: uma classe com uma única responsabilidade tende a ser mais simples de entender, testar e manter. Esse é um conceito clássico de orientação a objetos e é amplamente aceito na doutrina de engenharia de software. As demais alternativas misturam ou distorcem conceitos de padrões de projeto e princípios SOLID. Factory Method não serve para impedir criação em tempo de execução, Singleton não existe para permitir várias instâncias, ISP não recomenda interfaces grandes e LSP não autoriza subclasses a mudarem o contrato da superclasse. Pelo contrário, ele exige que a substituição seja segura.