PHP SINGLETON АНТИПАТТЕРН

Singleton – это объект, который может существовать только в одном экземпляре. Singleton обычно используется для создания объекта конфигурации, создания объекта базы данных или любого другого класса, объект которого создается лишь один раз.

Singleton в PHP - это известный антипаттерн, который является популярным, но может иметь некоторые проблемы в расширении, и может увеличить количество ошибок в коде. Есть множество способов создания Singleton в PHP, но некоторые из них могут привести к ошибкам в работе, особенно когда речь идет об изменении модели данных.

class Singleton { private static $instance; private function __construct() { // код конструктора } public static function getInstance() { if(!self::$instance) { self::$instance = new self(); } return self::$instance; } private function __clone() { // заблокировали клонирование объекта } private function __wakeup() { // заблокировали десериализацию объекта }}

Для того, чтобы использовать Singleton в PHP, достаточно вызвать метод getInstance ():

$singleton = Singleton::getInstance();

Однако, несмотря на множество положительных аспектов Singleton, его также относят к категории антипаттернов. Потому что его использование является индикатором, что проблемы многократного создания объектов не были решены, а именно через использование DI-контейнеров (например, Symfony Service Container).

Самый популярный и тупой паттерн - Singleton

Одиночка. Singleton ► Шаблон проектирования ► Урок №9

Урок 02. PHP - Design Patterns. Singleton. Multione container

«Антипаттерны разработки», Фархад Бекмухамбетов

Singleton - антипаттерн? Паттерны проектирования [RU, Android] / Мобильный разработчик

Паттерн Singleton на реальном примере в PHP

Антипаттерны программирования. Используем каждый день.

Singleton - избегайте его

Трейдинг с нуля - Бинарные Опционы Стратегия - Торговый бот для Бинарных Опционов - Pocket Option

шаблон проектирования - singleton (одиночка) design patterns

Реклама
Новое
Реклама