0
public interface Behaviour<D extends GameComponent, S,  R extends Result<S>> {

    public String getName();
        
    public R execute(D component, S state);
}

由于实施中的行为如此多样化,我担心状态将成为具有许多不同领域的上帝对象。对于只需要一部分状态而不是所有内容的行为,这似乎有点过头了。首先,这甚至是一种反模式,然后我将如何解决它?

我已经考虑过这样做,以便行为记录它在创建时需要的状态或段,但我只是不确定它会是什么样子。此外,我考虑让 state 成为一个存储,其中所有字段都存储在一个键和值下。我唯一不喜欢的是必须在检索时强制转换对象。

4

0 回答 0