有条不紊的角色包含实际的算法,但是上下文执行方法应该做什么但是执行其中一种方法呢?
public class SomeContext
{
// ... Constructor omitted ...
public void Execute()
{
// Is this all?
someRole.DoStuff(this.anotherRole, this.otherData);
}
}
看起来很简单,所以我认为Context应该负责例如数据库查找。这不会简化有条不紊的角色吗?
答案 0 :(得分:3)
上下文的主要职责是将角色绑定到对象。有时,一个或多个“执行”方法将很复杂,但通常不是。 它们用于捕获对象之间的交互
角色与对象的绑定是原子的。它发生在上下文中的一个位置,同时发生在所有角色中。