Back to questions
Junior — Middle
68
Можете ли вы назвать некоторые основные шаблоны проектирования, с которыми вы сталкивались?
Answer from AI
sobes.tech AI
Некоторые основные шаблоны проектирования, часто используемые в Python:
- Singleton (Одиночка) — гарантирует, что класс имеет только один экземпляр.
- Factory (Фабрика) — создаёт объекты без указания конкретного класса.
- Observer (Наблюдатель) — позволяет объектам подписываться на события другого объекта.
- Decorator (Декоратор) — динамически расширяет функциональность объекта.
- Strategy (Стратегия) — позволяет выбирать алгоритмы во время выполнения.
Пример простого Singleton в Python:
class Singleton:
_instance = None
def __new__(cls):
if cls._instance is None:
cls._instance = super().__new__(cls)
return cls._instance
s1 = Singleton()
s2 = Singleton()
print(s1 is s2) # True
Эти шаблоны помогают писать более гибкий и поддерживаемый код.