Почитать хорошо бы вот такое - www.ozon.ru/context/detail/id/33506422
Посмотреть примеры кода - наверное лучше будет на примере популярного фреймворка.
Понять как он устроен, где какие паттерны применены и какие проблемы они решают.
Я бы советовал Symfony - https://github.com/symfony/symfony
Вы вроде бы пытаетесь реализовать Singleton, но пытаетесь создать экземпляр класса.
Я бы рекомендовал вам почитать побольше про этот паттерн и усвоить что к чему.