Паттерн Singletone с примером на JavaScript
Алоха товарищи фронты! Несмотря на то что в последнее время все больше задач мы обычно решаем в функциональном стиле я хотел бы сегодня вам рассказать о одном из самых распространенных классовых паттернов - синглтон.
И так что это:
Паттерн Singleton означает создание только одного экземпляра класса и доступ к нему через методы-геттеры.
Пример использования:class Singleton { constructor() { if (!Singleton.instance) { Singleton.instance = this; } return Singleton.instance; } someMethod() { console.log('Hello from Singleton!'); }}const instance1 = new Singleton();const instance2 = new Singleton();instance1.someMethod(); // "Hello from Singleton!"console.log(instance1 === instance2); // true
В данном примере класс Singleton будет создавать только один экземпляр и все вызовы конструктора будут возвращать ссылку на этот экземпляр. Таким образом, мы можем быть уверены, что где бы ни встретились вызовы методов класса Singleton, они всегда будут работать с одним и тем же экземпляром.