Junior — Middle
Jakie wzorce projektowe stosujesz podczas tworzenia części serwerowej systemu?
sobes.tech AI
Odpowiedź od AI
Podczas tworzenia części serwerowej często stosuję następujące wzorce projektowe:
- Repository — do abstrakcji dostępu do danych, oddzielenia logiki pracy z bazą danych od logiki biznesowej.
- Dependency Injection — do zarządzania zależnościami i upraszczania testowania.
- Singleton — do tworzenia pojedynczego egzemplarza usług lub menedżerów, na przykład do konfiguracji.
- Factory — do tworzenia obiektów z różnymi konfiguracjami lub typami bez sztywnego powiązania z konkretnymi klasami.
- Strategy — do wyboru algorytmu lub zachowania podczas wykonywania.
Przykład użycia Repository w C#:
public interface IUserRepository {
User GetById(int id);
void Add(User user);
}
public class UserRepository : IUserRepository {
public User GetById(int id) {
// implementacja dostępu do bazy danych
}
public void Add(User user) {
// dodanie użytkownika
}
}
To pozwala na zmianę implementacji dostępu do danych bez zmiany logiki biznesowej.