Sobes.tech
Back to questions
Junior — Middle
85

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

Answer from AI

sobes.tech AI

В Node.js часто используются следующие шаблоны проектирования:

  • Singleton — для создания единственного экземпляра объекта, например, для подключения к базе данных.
  • Factory — для создания объектов с разной конфигурацией.
  • Observer — для событийно-ориентированного программирования, например, через EventEmitter.
  • Middleware — в Express.js для обработки запросов по цепочке.
  • Decorator — для расширения функционала объектов без изменения их кода.

Пример Singleton для подключения к базе данных:

class Database {
  constructor() {
    if (Database.instance) {
      return Database.instance;
    }
    this.connection = this.connect();
    Database.instance = this;
  }

  connect() {
    // логика подключения
    return {};
  }
}

const db1 = new Database();
const db2 = new Database();
console.log(db1 === db2); // true