行为模式-命令模式

本文介绍命令模式(Command)的概念及其在软件开发中的应用。通过将请求封装为对象,该模式允许开发者参数化请求、记录操作日志及支持撤销功能。文中还提供了一个简单的命令模式实现示例,包括命令接口及具体的命令类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

         命令模式(Command)将一个请求封装为对象,从而使你可用不同的请求对客户进行参数.对请求排队或者记录日志,以及支持可撤销的操作.也就是说将功能封装成对象.对象的激发者和接收者都不需要了解命令的执行过程.从而消除了激发者和接收者之间的耦合.为程序提供了更清晰的结构.实际运用中通过将系统的命令封抽象成一个接口所有的命令都是这个接口的实现.

         为了给命令模式一个整洁清晰的结构,命令模式通常和工厂模式一起使用.采用一个工厂对命令对象的建立进行管理,减少命令激发者与命令对象之间的耦合程度.

    public interface ICommand

    {

        void Execute();

        void Undo();

    }   // interface ICommand

 

    public class DirCommand : ICommand

    {

        public void Execute()

        {

        }

 

        public void Undo()

        {

        }

    }   // class DirCommand

 

    public class RenameCommand : ICommand

    {

        public void Execute()

        {

        }

 

        public void Undo()

        {

        }

    }   // class RenameCommand

 

    public class Factory

    {

        public static ICommand Create(string command)

        {

            ICommand cmd;

 

            switch (command)

            {

                case "Dir" :

                    cmd = new DirCommand();

                    break;

                case "Rename" :

                    cmd = new RenameCommand();

                    break;

                default :

                    cmd = new DirCommand();

                    break;

            }

 

            return cmd;

        }

    }   // class Factory

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值