Friend spotlight!
Whimsical Animations course
Friend spotlight!
NEW Whimsical Animations course
Friend spotlight! NEW Whimsical Animations course
huge discount only this week
Friend spotlight! Want to make your project stand out? NEW Whimsical Animations course huge discount only this week
Singleton

Singleton w języku Java

Singleton to kreacyjny wzorzec projektowy gwarantujący istnienie tylko jednego obiektu danego rodzaju. Udostępnia też pojedynczy punkt dostępowy do takiego obiektu z dowolnego miejsca w programie.

Singleton charakteryzuje się prawie takimi samymi zaletami i wadami jak zmienne globalne i chociaż jest bardzo poręczny, to jednak psuje modularność kodu.

Nie można przenieść klasy zależnej od Singletona i użyć jej w innym kontekście bez równoczesnego przeniesienia tego drugiego. To ograniczenie zazwyczaj ujawnia się na etapie tworzenia testów jednostkowych.

Złożoność:

Popularność:

Przykłady użycia: Wielu twórców oprogramowania uważa Singleton za antywzorzec, przez co jego użycie w kodzie Java stopniowo maleje.

Pomimo tego, w głównych bibliotekach Java można znaleźć mnóstwo przykładów zastosowania tego wzorca:

Identyfikacja: Singleton można rozpoznać po statycznej metodzie kreacyjnej zwracającej jakiś obiekt którego instancja jest przechowywana w pamięci podręcznej.

Singleton w innych językach

Singleton w języku C# Singleton w języku C++ Singleton w języku Go Singleton w języku PHP Singleton w języku Python Singleton w języku Ruby Singleton w języku Rust Singleton w języku Swift Singleton w języku TypeScript