/// <summary>
        /// FACADE: serve como uma frente única para os serviços disponibilizados por um ou mais sub-sistemas.
        /// SINGLETON: possibilita que o usuário crie uma instância global para determinado objeto
        /// </summary>
        private static void FacadeSingleton()
        {
            EmpresaFacade fachada = new EmpresaFacadeSingleton().Instancia;

            String  cpf     = "12345678-11";
            Cliente cliente = new EmpresaFacade().BuscaCliente(cpf);

            double valor  = 500;
            Fatura fatura = new EmpresaFacade().CriaFatura(cliente, valor);

            Cobranca cobranca = new EmpresaFacade().GeraCobranca(fatura);

            cobranca.Emite();

            ContatoCliente contato = new EmpresaFacade().FazContato(cliente, cobranca);

            contato.Dispara();
        }