DesignPatternPractice Project contains following design patterns: abstractFactory builder factory singleton strategy