ПАТТЕРН NULL OBJECT PHP
Null Object (пустой объект) - это паттерн проектирования, который используется в объектно-ориентированном программировании для предотвращения возможных ошибок, возникающих из-за ссылок на несуществующий объект.
В PHP можно реализовать Null Object паттерн следующим способом:
class SomeClass { private $dependency; public function __construct(Dependency $dependency = null) { $this->dependency = $dependency ?: new NullDependency; } // ...}class Dependency { // ...}class NullDependency extends Dependency { // Класс-заглушка для случая, когда зависимость не установлена.}
Таким образом, при необходимости можно передать зависимость в SomeClass, но если она не была установлена, будет использоваться NullDependency как класс-заглушка. Это обеспечивает безопасность и избавляет от необходимости проверки на null для каждой зависимости в SomeClass.
Use Null Object Pattern in Your Rich Domain Model
Null Object Pattern - Design Patterns
PHP OOP Design Patterns - Factory Method
A Simple Example of the Null Object Pattern
Demonstration of the PHP Null Object Design Pattern (OOP)
Object Oriented PHP #12 - Validation Class (part 1)
PHP Design Patterns course preview - PHP Dependency injection and factory pattern -Advanced OOP PHP