Back to questions
Junior — Middle
70
Какие шаблоны проектирования вы применяли в своей практике разработки?
Answer from AI
sobes.tech AI
В своей практике разработки на C# я применял несколько шаблонов проектирования, которые помогают сделать код более поддерживаемым и расширяемым:
- Singleton — для создания единственного экземпляра класса, например, для логгера или менеджера конфигурации.
- Factory Method — для создания объектов без жесткой привязки к конкретным классам, что облегчает расширение функционала.
- Repository — для абстракции доступа к данным, что упрощает тестирование и смену источника данных.
- Dependency Injection — для управления зависимостями между классами, что улучшает модульность и тестируемость.
Пример использования Singleton в C#:
public class Logger
{
private static Logger _instance;
private static readonly object _lock = new object();
private Logger() { }
public static Logger Instance
{
get
{
lock (_lock)
{
if (_instance == null)
_instance = new Logger();
return _instance;
}
}
}
public void Log(string message)
{
Console.WriteLine(message);
}
}
Использование таких шаблонов помогает создавать гибкие и легко поддерживаемые приложения.