Co je to singleton vzor?
Matematický koncept singletonu je sada čísel, která obsahuje pouze jedno jediné číslo. Softwaroví inženýři a programátoři přeložili tento koncept do něčeho, co se nazývá singleton vzor, ve kterém jsou různé soubory informací přístupné různými programy pouze jednou a vždy obsahují stejnou sadu pokynů nebo informací. Vzor singletonu se používá v programovacích jazycích, jako je Java k definování globální proměnné, kus informací použitých v celém systému, který zůstává stejný a je třeba jej definovat pouze jednou místo mnohokrát.
Ve většině programovacích jazyků, než může spustit program, vyžaduje další informace o jeho prostředí. Většina informací specifických pro program je obsažena v jeho vlastním programovém kódu; Program však často také vyžaduje variabilní informace o věcech, jako je verze operačního systému, ve kterém běží, hardware, na kterém je spuštěn, a další konkrétní informační informaceiont není jedinečný pro samotný program. Tato informace je obvykle obsažena v něčem, co se nazývá třída nebo objekt, což je nezávislý kus programovacího kódu často obsaženého v souboru odděleném od programu, takže může být k dispozici mnoha různým programům současně.
Pokud programovací jazyk nepoužívá vzor singleton, každý program, který vyžaduje informace obsažené v objektu, přistupuje k jeho otevření objektu sadou parametrů, které specifikují, jaké informace v objektu, který program potřebuje. Proto pokaždé, když jiný program otevře objekt, je v paměti počítače vytvořena jiná instance objektu. Každá instance objektu může obsahovat různé informace v závislosti na konkrétních potřebách každého programu, který jej otevírá.
Když programovací jazyk, který používá vzor singletonu, jako je Java, začne provozovat program, PRogram nejprve hledá objekty, z nichž potřebuje informace. Pokud objekt již není otevřený, otevře objekt bez konkrétních parametrů, což zpřístupní všechny informace obsažené v objektu všem programům. Pokud je objekt již otevřený, jednoduše přečte informace v objektu a pokračuje. Tímto způsobem jsou informace obsažené v objektu s použitím singletonového vzoru vždy stejné, takže není třeba otevírat mnoho různých verzí objektu současně. To šetří prostor v paměti počítače a může také zvýšit rychlost, protože ostatní programy mají přístup k informacím, aniž by museli trávit čas vytvářením nové verze objektu.