Sobes.tech
Junior — Middle

Que padrões de design você aplica ao desenvolver a parte do servidor do sistema?

sobes.tech IA

Resposta da IA

Ao desenvolver a parte do servidor, frequentemente utilizo os seguintes padrões de projeto:

  • Repository — para abstrair o acesso aos dados, separando a lógica de trabalho com a base de dados da lógica de negócio.
  • Dependency Injection — para gerir as dependências e simplificar os testes.
  • Singleton — para criar uma única instância de serviços ou gestores, por exemplo, para configuração.
  • Factory — para criar objetos com diferentes configurações ou tipos sem estar ligado a classes específicas.
  • Strategy — para escolher o algoritmo ou comportamento durante a execução.

Exemplo de uso do Repository em C#:

public interface IUserRepository {
    User GetById(int id);
    void Add(User user);
}

public class UserRepository : IUserRepository {
    public User GetById(int id) {
        // implementação do acesso à base de dados
    }
    public void Add(User user) {
        // adicionar utilizador
    }
}

Isto permite alterar a implementação do acesso aos dados sem modificar a lógica de negócio.