exemplos de singleton e factory