Singleton (česky jedináček nebo také unikát) je název pro návrhový vzor používaný při programování. Využijeme ho, když je potřeba, aby v celém programu existovala pouze jedna instance určité třídy. Návrhový vzor také poskytne globální přístupový bod k instanci[1]. Singleton je také často využíván jako součást jiných návrhových vzorů jako jsou například Flyweight nebo Facade.