【发布时间】:2013-02-24 03:31:02
【问题描述】:
我理解责任链模式的概念,但可能我用错了。
我有几种类型的产品,并且我有一个控制器来控制为每种类型的产品显示的界面。用户选择产品类型,每个控制器负责显示相应的界面并与之交互。
为此,我使用了责任链模式,我认为这听起来不太好。我正在做的是创建一个控制器链,一旦我收到产品类型请求,我只需将其传递给控制器链并让适当的控制器实现请求。
但是在思考时,使用一个简单的工厂但有许多条件语句也可以实现相同的目标。
您如何看待在这种情况下使用责任链?
【问题讨论】:
-
如果它有效,不要到处修复它。我可以想到命令模式来做同样的工作。
-
但是责任链是否适用于此类问题?
-
在我发布答案之前,我的问题是:一旦选择了产品类型,下游界面处理和导航是否取决于任何其他变量,或者它只是产品类型的函数而没有还有吗?
-
仅产品类型的功能,例如要输入特定产品类型的详细信息,必须显示相应的视图,该视图由相应的控制器控制,并且需要将不同的参数传递给不同产品的构造函数,因此控制器显示相应的界面,得到值,将它们传递给正确的产品并返回产品
标签: java design-patterns factory chain-of-responsibility