Sobes.tech
Junior — Middle

Pode explicar o conceito de repositório comum para trabalhar com dados e suas principais vantagens?

sobes.tech IA

Resposta da IA

O repositório geral (Repository) é um padrão de projeto que serve como uma abstração para o acesso aos dados. Encapsula a lógica de obtenção, armazenamento e gestão de objetos de dados, separando a lógica de negócio dos detalhes de trabalhar com bases de dados ou outras fontes.

Vantagens do repositório geral:

  • Simplificação do acesso aos dados — a camada de negócio trabalha com o repositório sem se preocupar com como exatamente os dados são armazenados.
  • Aumento da testabilidade — é fácil substituir o repositório por objetos simulados para testes unitários.
  • Ponto único de alterações — se mudar a forma de armazenar os dados, basta modificar o repositório sem alterar o restante do código.
  • Reutilização de código — operações comuns com dados são implementadas uma única vez.

Exemplo de interface de repositório em C#:

public interface IRepository<T>
{
    IEnumerable<T> GetAll();
    T GetById(int id);
    void Add(T entity);
    void Update(T entity);
    void Delete(int id);
}

Esta interface pode ser implementada para diferentes fontes de dados — bases, ficheiros, API, etc.