哪种设计模式适用于导航?

3
我有一个应用程序,通过一系列屏幕收集用户数据。每个屏幕上都有“下一步”按钮和“返回”按钮。但是这些屏幕并不总是连续和线性的。例如,如果已经收取了付款并且用户在确认屏幕上,当他们单击“返回”时,应该被带到编辑预订屏幕。我决定需要一个名为“StateMarshaller”的对象,它将理解域中的信息,并公开 next(string action) back(string currentLocation) 函数。然后它会返回一个“State”对象并告诉应用程序去哪里。
我想知道是否有人可以推荐一个好的模式,以便我们建立测试用例和重构,我正在看命令或迭代器,但并不完全感觉良好。我认为问题的一部分是我习惯于强类型,但现在使用动态语言。

如果可能的话,不要使用“下一个/上一个”按钮,而是给用户提供面包屑导航,让他自己决定去哪里。 - piotrek
1个回答

2
看起来你可以从使用状态模式中受益。

enter image description here

这个想法是每个屏幕都有一个“状态”。每个屏幕将自己进行检查,以确定用户在按下适当的按钮时要去哪里。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接