Junior — Middle
Quais são as vantagens e desvantagens de usar uma interface comum para fontes de dados remotas e locais?
sobes.tech IA
Resposta da IA
A utilização de uma interface comum para fontes de dados remotas e locais tem as suas vantagens e desvantagens.
Vantagens:
- Simplificação da arquitetura: o código do cliente trabalha com uma única interface, sem se preocupar de onde vêm os dados.
- Facilidade na troca de fonte de dados: é possível alternar entre uma fonte local e uma remota sem alterar a lógica de negócio.
- Aumento da testabilidade: a fonte de dados pode ser substituída por objetos simulados.
Desvantagens:
- Diferenças de comportamento e desempenho: a fonte remota pode ser mais lenta, ter erros de rede, o que requer tratamento adicional.
- Complexidade no tratamento de erros: a fonte local costuma ser confiável, enquanto a remota não, o que pode complicar a lógica.
- Diferenças no modelo de dados ou formato: às vezes, os dados locais e remotos têm estruturas diferentes, o que requer adaptação.
Exemplo: interface DataSource com métodos getData(), implementada pelas classes LocalDataSource e RemoteDataSource. O código do cliente chama getData(), sem saber exatamente de onde vêm os dados.