2

有方法的角色包含实际的算法,但是上下文执行方法除了执行其中一种方法之外应该做什么?

public class SomeContext
{
    // ... Constructor omitted ...

    public void Execute()
    {
        // Is this all?
        someRole.DoStuff(this.anotherRole, this.otherData);
    }
}

看起来很简单,所以我认为 Context 应该负责例如数据库查找。这不会简化有条理的角色吗?

4

1 回答 1

3

上下文的主要职责是将角色绑定到对象。有时一种或多种“执行”方法会很复杂,但通常并非如此。他们在那里捕捉对象之间的交互

角色与对象的绑定是原子的。它发生在上下文中的一个位置,同时适用于所有角色。

于 2012-10-29T05:09:34.363 回答