Sobes.tech
Back to questions
Junior — Middle
72

Какие шаблоны проектирования ты применяешь в своей практике?

Companies where asked
ФинГрад
Бренд Монитор
Геомикс
appfox

Answer from AI

sobes.tech AI

В практике на C# часто применяю следующие шаблоны проектирования:

  • Singleton — для создания единственного экземпляра класса, например, для логгера или менеджера конфигурации.
  • Factory Method — для создания объектов без указания конкретного класса, удобно при работе с иерархиями классов.
  • Repository — для абстракции доступа к данным, упрощает тестирование и поддержку.
  • Dependency Injection — для управления зависимостями и повышения тестируемости.
  • Observer — для реализации событийной модели, например, через делегаты и события.

Пример Singleton:

public class Logger
{
    private static Logger _instance;
    private Logger() { }

    public static Logger Instance => _instance ??= new Logger();

    public void Log(string message)
    {
        Console.WriteLine(message);
    }
}

Выбор шаблона зависит от задачи и архитектуры проекта.