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

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

В Frontend часто применяю такие паттерны:

Singleton - для глобальных сервисов (например, API клиент):

js
class ApiService {
  constructor() {
    if (!ApiService.instance) {
      ApiService.instance = this;
    }
    return ApiService.instance;
  }
}

Observer/Pub-Sub - для событийной коммуникации:

js
const eventBus = {
  listeners: {},
  subscribe(event, callback) {
    this.listeners[event] = callback;
  },
  emit(event, data) {
    this.listeners[event]?.(data);
  }
};

Factory - создание сложных компонентов:

js
function createButton(type) {
  switch(type) {
    case 'primary': return new PrimaryButton();
    case 'secondary': return new SecondaryButton();
  }
}

Также часто использую Decorator для расширения функциональности компонентов и Strategy для замены алгоритмов. В React активно применяется Compound Components (например, Context API).

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

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

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

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