Como criar um Repository Genérico em Golang?

Ortiz de Arcanjo Antonio David - Sep 13 - - Dev Community

O Repository genérico facilita o agrupamento das operações comuns na base de dados no sistema. É essencial termos essa estrutura.

Passos a seguir:

  • Criar uma interface Entity que será usada no Repository.
  • Definir as operações básicas (Create, Read, Update e Delete).
  • Definir outras operações importantes (Count, Lirst, Last e outros).
  • Para melhor organização, colocar em um diretório /shared ou /common.

Procedimento:

  • O repository incorpora o base Repository via composição.
  • O construtor do Repository deve inicializar o BaseEntity.
  • O Repository implementa apenas as funções específicas de acordo com seu propósito.
  • O repository pode sobrescrever um método existente na base.

Alguns Relacionamentos:

  • Interface Entity e Entity: Implementação ou realização.
  • Entity (Concreta) e BaseEntity: Composição.
  • Repository e Base Repository: Composição.
  • Repository e Entity: Dependência.

Vantagens:

  • Organização.
  • Centralização da lógica.
  • Reuso do repository.
  • Escalabilidade, facilitando a adição ou remoção de funções.

Código fonte:

Image description

Image description

Image description

Image description

Image description

Image description

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player