static void Main(string[] args) { Invoker invoker = new Invoker(); TaskManager task = new TaskManager(); //REALIZA NO INICO O CONCRETE COMANDO invoker.SetOnStart(new SimpleCommand("Say Hi!")); //INSTANCIA O RECEIVER PARA O INVOKER Receiver receiver = new Receiver(); //REALIZA NO FIM O COMPLEX COMANDO invoker.SetOnEnd(new ComplexCommand(receiver, task, "Send email", "Save report")); //REALIZA AS FUNÇÕES invoker.SetCommand(); task.Redo(); Console.ReadLine(); }