DEV Community

Cover image for Como abstrair a conexão com base de dados em Golang?
Ortiz de Arcanjo António David
Ortiz de Arcanjo António David

Posted on

Como abstrair a conexão com base de dados em Golang?

A abstracção da conexão com a base de dados e a injecção de dependências organizam o código e trazem muitos benefícios.

Onde a base de dados é injectada?

  • Nas rotas: A conexão é injetada nos controllers durante a inicialização.
  • Nos repositories: Recebem a conexão para realizar operações na base de dados.
  • Nos services: Utilizam os repositories para interagir com o banco de dados.
  • Nos controllers: Recebem os services já configurados com a base de dados.

Vantagens:

  • Desacoplamento da conexão.
  • Organização do código.
  • Facilidade na troca de banco de dados.
  • Simplicidade nos testes.
  • Facilidade na manutenção.
  • Centralização da conexão.
  • Reuso em todo o sistema.

Código fonte:

Image description

Image description

Image description

Image description

Image description

Image description

Image of Datadog

The Future of AI, LLMs, and Observability on Google Cloud

Datadog sat down with Google’s Director of AI to discuss the current and future states of AI, ML, and LLMs on Google Cloud. Discover 7 key insights for technical leaders, covering everything from upskilling teams to observability best practices

Learn More

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

Retry later