敏捷软件开发之Command模式

Command模式是设计模式中最简单的模式,该接口标准实现只有一个方法。该模式常见用法是创建和执行事务。

Active Object模式是使用Command模式的地方之一。该模式是实现多线程控制的一项最古老的技术。
如下:
ActiveObjectEngine对象维护了一个Command对象的链表。用户可以向该引擎增加新的命令,或者调用run()。run()函数只是遍历链表,执行并去除每个命令。

public interface Command {
    void execute();
}

public class ActiveObjectEngine {
    ArrayList itsCommands = new ArrayList<>();

    public void addCommand(Command cmd) {
        this.itsCommands.add(cmd);
    }

    public void run() {
        while (this.itsCommands.size() > 0) {
            Command cmd = this.itsCommands.get(0);
            itsCommands.remove(0);
            cmd.execute();
        }
    }
}

你可能感兴趣的:(敏捷软件开发之Command模式)