Встречается на собеседованиях • сегодня

Какие знаешь особенности шаблонов проектирования

Шаблоны проектирования — это проверенные решения типовых проблем в разработке ПО. В Python они реализуются проще благодаря динамической типизации и гибкости языка.

Основные группы шаблонов:

  1. Порождающие (например, Singleton, Factory, Builder) — управляют созданием объектов.
  2. Структурные (например, Adapter, Decorator, Proxy) — определяют отношения между объектами.
  3. Поведенческие (например, Observer, Strategy, Command) — описывают взаимодействие объектов.

Особенности в Python:

  • Декораторы встроены в синтаксис (@decorator).
  • Модули по умолчанию являются Singleton.
  • Duck Typing позволяет легко реализовывать Adapter без наследования.

Пример Singleton:

python
class Singleton:
    _instance = None

    def __new__(cls):
        if cls._instance is None:
            cls._instance = super().__new__(cls)
        return cls._instance

Python часто позволяет обойтись без сложных шаблонов благодаря своей гибкости, но их знание помогает писать более структурированный код.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы