PDC2009 实战论坛 – State Machine工作流的未来方向

随着.NET Framework 4 Beta2的发布,各位可能已经了解到,WF 4.0中并没有包含WF 3.5中提供的State Machine,而是添加了全新的Flowchart。随后我们陆续收到很多反馈信息,很多开发人员都认为全新的Flowchart非常棒,但是State Machine也是大家非常需要的功能。

其实,我们并没有忘记State Machine。相反,我们正在积极的设计并实现全新的基于WF 4.0的State Machine。无论在功能、编程模型以及设计器用户体验方面,与WF 3.5中的State Machine相比都会有非常大的提高。为响应广大开发人员的反馈,在今年的PDC上(洛杉矶,PDC2009),我很荣幸有机会在一个实战论坛上(Chalk talk)跟一些与会者分享了我们对State Machine的计划,并演示了如何使用我们实现的一个State Machine的初始原型实现订单处理流程。我们的设计收到了与会者的肯定,同时大家也提出了很多的反馈与建议。

Matt Winkler有一篇短小的博客介绍了PDC2009中的一些实战论坛。在这里我想跟大家分享一下这次实战论坛的重点内容。

计划

我们将会在Visual Studio 2010正是发布前后发布基于WF 4.0的State Machine预览版,搜集更多的用户反馈以便确定产品的正式发布。

背景

WF 4.0将会包含全新的Flowchart,这将可以使您方便的对很多格式自由的流程进行建模。另一方面,它也许并不适合于State Machine所擅长的事件驱动的流程。

讨论的主要特性

对象模型

  • 可嵌套的状态(Nested States)
  • 查询接口(Query Interfaces):用来查询State Machine的状态,比如当前在哪一个State。
  • 自跳转(Self-transition):一个State是否可以跳转到它自身。
  • 条件跳转(Conditional transition)
  • 事件处理模型,等等。

设计器

  • 展开/折叠视图
  • 显示条件跳转的判断顺序,等等。

反馈

  • 我们非常希望了解您在State Machine方面的应用场景和需求。
  • 您可以通过论坛Connect网站向我们提供反馈。您也可以直接发邮件给我本人:alanko@microsoft.com

下面是一张我们State Machine初始原型的截图。当然,需要说明的是,这只是我们用来展示概念、进行讨论并获取反馈之用。最终产品可能会有所不同。

WF State Machine Early Prototype 

点击查看大图 

接下来,我们还会陆续在这里发表State Machine相关的最新内容。敬请期待!

Technorati Tags: State Machine,Events,PDC,PDC2009,WF 4.0

Alan Ko (alanko@microsoft.com)

Program Manager | ADX