Junior — Middle
Sistemin sunucu tarafını geliştirirken hangi tasarım desenlerini kullanıyorsunuz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Sunucu tarafını geliştirirken genellikle aşağıdaki tasarım desenlerini kullanıyorum:
- Repository — veriye erişimi soyutlamak, veritabanıyla çalışma mantığını iş mantığından ayırmak için.
- Dependency Injection — bağımlılıkları yönetmek ve testleri kolaylaştırmak için.
- Singleton — hizmetlerin veya yöneticilerin tek bir örneğini oluşturmak için, örneğin yapılandırma için.
- Factory — belirli sınıflara sıkı bağlı olmadan farklı yapılandırmalar veya türlerle nesneler oluşturmak için.
- Strategy — çalışma sırasında algoritma veya davranış seçmek için.
C#'ta Repository kullanımına örnek:
public interface IUserRepository {
User GetById(int id);
void Add(User user);
}
public class UserRepository : IUserRepository {
public User GetById(int id) {
// veritabanına erişim uygulaması
}
public void Add(User user) {
// kullanıcı ekleme
}
}
Bu, veriye erişim uygulamasını değiştirmeyi, iş mantığını değiştirmeden sağlar.