首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在PureMVC中实现过程工作流

在PureMVC中实现过程工作流
EN

Stack Overflow用户
提问于 2011-10-11 14:00:59
回答 3查看 371关注 0票数 1

我正在寻找关于在基于PureMVC的应用程序中实现流程流/工作流管理的建议。

我们的Flex应用程序包括许多过程,如帐户创建、支付处理等。

在我们的团队中,有一些关于我们应该如何严格地坚持PureMVC模型的讨论。

在PureMVC模型中,进程中的当前状态可以在代理中管理似乎是合理的。

命令显然负责处理每个节点所需的操作和节点转换。

用于管理UI的中介程序。

然而,我认为这里仍然缺少一个重要的部分:一个ProcessController。

我们所审查的方法似乎都违背了PureMVC模型(哪怕只是一点点),或者造成了不可读的代码。

  • A代理将维护进程的状态。因此,它似乎是实现控制器的适当方法。然而,这给代理注入了很多业务逻辑。
  • Mediator空间更有意义,但该空间中的控制器不一定直接与任何特定的UI元素交互,而是将协调/委托给专用中介程序。
  • 还有另一个模型会让我们将流程转换信息放入命令中。虽然这似乎是进行这项工作的最佳位置(考虑到命令相对于代理和中介程序的作用),这种方法似乎可以使一些特别令人发指的代码具有分布在大量命令中的进程转换逻辑。

那么其他人是如何处理这个问题的呢?

谢谢柯蒂斯

EN

回答 3

Stack Overflow用户

发布于 2011-12-13 17:20:12

这正是PureMVC StateMachine实用程序(以及一般的有限状态机)要解决的问题。

在简单的XML格式中,您可以定义状态、到其他状态的有效转换以及触发这些转换的操作。

所有这些都是基于通知的,因此您发送StateMachine.ACTION通知,导致StateMachine执行可能需要的任何输入/退出保护逻辑(例如,如果所有数据都有效,则只允许退出FORM_ENTRY状态,或者只有在用户拥有管理权限时才允许进入FORM_PROCESSING状态,等等)。如果发生状态更改,则发送通知,这些通知可用于在进入新状态时组织视图或执行逻辑。

下面是一个StateMachine概述演示文稿,它将给您一个更好的http://puremvc.tv/#P003/想法

票数 4
EN

Stack Overflow用户

发布于 2011-10-12 05:22:06

我认为你关于'ProcessController‘的想法可能是更好的方法。就我个人而言,我不喜欢PureMVC,也不使用它,因为它不允许足够的灵活性或扩展点来帮助解决这些问题。

坦率地说,很难就你的问题提出建议,因为我不知道你到底想做什么。我同意这个问题需要由一个物体来处理。如果可以,请尝试创建一个模型,该模型可以存储流程的数据,并让另一个类对整个过程进行管理。不确定这是否有意义,但话又说回来,你的问题也不是很清楚。

作为额外的补充,我将研究依赖注入。我正在努力记住PureMVC是否会这么做(我不认为它会这么做),但是对于DI来说,这将是一个相当简单的问题。像欧芹和机器人腿这样的框架非常擅长这一点。

票数 1
EN

Stack Overflow用户

发布于 2011-11-11 12:47:27

在pureMVC中,根据实现成语和最佳实践文档,状态机实用程序可能是过程控制器的最佳选择。对于PureMVC来说,使用不管理可见组件的中介程序是非常好的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7727269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档