Junior — Middle
Каква е целта на патърна Singleton в софтуерната архитектура?
sobes.tech AI
Отговор от AI
Моделът Singleton е проектиран да гарантира, че в приложението съществува само един екземпляр на даден клас. Това е полезно, когато е необходимо централизирано управление на достъпа до ресурс, като база данни или конфигурация.
Основни характеристики на Singleton:
- Гарантира единствен екземпляр на класа.
- Предоставя глобална точка за достъп до този екземпляр.
Пример на PHP:
class Singleton {
private static ?Singleton $instance = null;
private function __construct() {
// частен конструктор, който забранява създаването на екземпляри отвън
}
public static function getInstance(): Singleton {
if (self::$instance === null) {
self::$instance = new Singleton();
}
return self::$instance;
}
public function doSomething() {
echo "Изпълнение на действие";
}
}
// Използване
$singleton = Singleton::getInstance();
$singleton->doSomething();
По този начин Singleton помага да се контролира създаването на обекти и да се предотврати дублиране на ресурси.