Назад к вопросам
Junior — Middle
127
Применяли ли вы паттерн Revealing Constructor в своей практике разработки?
Ответ от нейросети
sobes.tech AI
Паттерн Revealing Constructor в Node.js — это подход, при котором конструктор функции или класса явно возвращает объект с методами и свойствами, которые должны быть доступны извне, скрывая внутренние детали реализации. Это помогает контролировать публичный интерфейс и инкапсулировать приватные данные.
Пример:
function User(name) {
let _name = name; // приватное свойство
function getName() {
return _name;
}
function setName(newName) {
_name = newName;
}
// Возвращаем объект с явно раскрытыми методами
return {
getName,
setName
};
}
const user = User('Иван');
console.log(user.getName()); // Иван
user.setName('Пётр');
console.log(user.getName()); // Пётр
В практике я применял этот паттерн для создания модулей с четко определенным публичным API и скрытыми внутренними состояниями, что повышало читаемость и поддержку кода.