Junior — Middle
Have you applied the Revealing Constructor pattern in your development practice?
sobes.tech AI
Answer from AI
The Revealing Constructor pattern in Node.js is an approach where the constructor function or class explicitly returns an object with methods and properties that should be accessible from outside, hiding internal implementation details. This helps control the public API and encapsulate private data.
Example:
function User(name) {
let _name = name; // private property
function getName() {
return _name;
}
function setName(newName) {
_name = newName;
}
// Return an object with explicitly revealed methods
return {
getName,
setName
};
}
const user = User('Ivan');
console.log(user.getName()); // Ivan
user.setName('Peter');
console.log(user.getName()); // Peter
In practice, I used this pattern to create modules with a clearly defined public API and hidden internal states, which improved code readability and maintainability.