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.