我正在尝试设计一个应用程序,其中将有一个IAction对象的Map。每个IAction对象都有一个方法IAction IAction.processAction()在其中执行其中包含的知识。这可以查询调用Web服务的数据库,等等。在每个IAction控件执行之后,然后将其发送到下一个IAction实例。

当应用程序启动时,它将包含一个Map的Map,它将按照正确的执行顺序进行。 IntegerMap类型的键是执行执行的顺序。 IAction.processAction()可以将控制跳转到地图中的最后一个IAction或一起停止。

我可以在脑海中看到代码,并且已经写了几行代码来帮助我。我正在寻找一种可以轻松帮助此类处理的设计模式。我不确定Command模式是否适合这个角色。

我希望有人能告诉我他们觉得哪种模式适合或不适合。

最佳答案

听起来,Command模式在这里肯定具有一定的相关性。

但是,我认为您的做法是错误的。设计模式本质上是作为示例和配方,可指导您在设计产品的工作方式时沿着生产线引导您的想法。您正在做的是,将一个好的设计转换为“正式的”设计模式,这倒是倒退了。

除此之外,IAction对象映射中的关键是什么?听起来(可能是链接的)列表对他们来说是一个自然得多的结构。

关于java - Java设计模式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1589044/

10-08 21:10