static void Main(string[] args) { Document document = new Document(); ICommand displayCmd = new DisplayCommand(document); ICommand redoCmd = new RedoCommand(document); ICommand undoCmd = new UndoCommand(document); Invoker invoker = new Invoker(displayCmd, redoCmd, undoCmd); invoker.Display(); invoker.Redo(); invoker.Undo(); }
static void Main(string[] args) { Document document = new Document(); ICommand displayCmd = new DisplayCommand(document); ICommand redoCmd = new RedoCommand(document); ICommand undoCmd = new UndoCommand(document); Invoker invoker = new Invoker(displayCmd, redoCmd, undoCmd); invoker.Display(); invoker.Redo(); invoker.Undo(); }
static void Main(string[] args) { //1、命令行模式的根本目的在于将“行为的请求者”和“行为的实现者”解耦;实现手段:“将行为抽象为对象” Document doc = new Document(); DocumentCommand discmd = new DisplayCommand(doc); DocumentCommand undcmd = new UndoCommand(doc); DocumentCommand redcmd = new RedoCommand(doc); DocumentInvoker invoker = new DocumentInvoker(discmd, undcmd, redcmd); invoker.Display(); invoker.Undo(); invoker.Redo(); PatrickLiuAndWife liuAndLai = new PatrickLiuAndWife(); //命令接受者 Command command = new MakeDumplingsCommand(liuAndLai); //命令 PaPaInvoker papa = new PaPaInvoker(command); //命令请求者 papa.ExecuteCommand(); Console.ReadKey(); }