Questão nº 67
Questão de Boas Práticas e Padrões em TIC · FCC PMSP Analista TIC 2025 (nº 67)
Uma prefeitura está desenvolvendo um sistema para integrar um módulo de pagamentos legados, cujo formato de dados é incompatível com o novo subsistema de cobrança online. É necessário permitir que o novo subsistema utilize o módulo antigo sem modificá-lo diretamente. Nesse contexto, o padrão estrutural Gang of Four (GOF) que resolve de forma ideal o problema de integração entre interfaces incompatíveis é o
- AAdapter, pois converte a interface de uma classe para outra interface esperada pelos clientes, tornando possível a comunicação entre sistemas legados e novos. (alternativa correta)
- BBridge, pois separa a abstração da implementação, permitindo que sistemas legados e novos se comuniquem de forma integrada.
- CComposite, pois organiza objetos em estruturas hierárquicas, tratando composições e objetos individuais de forma integrada, permitindo a comunicação entre sistemas legados e novos.
- DFacade, pois fornece uma interface unificada e simplificada para um conjunto complexo de subsistemas, tornando mais simples a comunicação entre sistemas legados e novos.
- EFlyweight, pois compartilha estado intrínseco para reduzir o consumo de memória quando há múltiplas instâncias semelhantes interagindo entre sistemas ou subsistemas.
Resposta comentada
Gabarito Alternativa A
O padrão Adapter atua como um "tradutor" ou "adaptador de tomada", permitindo que objetos com interfaces diferentes (formas de se comunicar) trabalhem juntos, mesmo que originalmente não fossem compatíveis.
- (A) Correta: O Adapter é o padrão ideal para este cenário, pois ele cria uma ponte entre a interface existente do módulo legado e a interface esperada pelo novo subsistema, convertendo as chamadas e os dados para que a comunicação seja possível sem alterar o código original do módulo antigo.
- (B) Incorreta: O Bridge serve para separar a abstração da implementação, permitindo que ambos variem independentemente, o que não é o problema central de interfaces incompatíveis, mas sim de flexibilidade de design.
- (C) Incorreta: O Composite organiza objetos em estruturas de árvore, tratando objetos individuais e composições de forma uniforme, o que não se aplica à integração de interfaces incompatíveis.
- (D) Incorreta: O Facade fornece uma interface simplificada para um conjunto complexo de subsistemas, visando reduzir a complexidade de uso, e não adaptar interfaces incompatíveis. A armadilha é que ele também lida com "integração" ao simplificar, mas não resolve a incompatibilidade de interfaces.
- (E) Incorreta: O Flyweight foca na otimização de memória ao compartilhar objetos semelhantes, o que não tem relação com a integração de sistemas com interfaces incompatíveis.
Fonte: FCC PMSP Analista TIC 2025 Analista de Planejamento e Desenvolvimento Organizacional - Tecnologia da Informação e Comunicação (Caderno Tipo 001). Reproduzida para fins de estudo.