【翻译习作】 Windows Workflow Foundation程序开发-第一章02

1.2      Windows Workflow概览

微软的Windows Workflow Foundation(简称WF)是.NET框架3.0版的一部分。.NET3.0其它主要部分是Windows Presentation Foundation(简称WPF)和Windows Communication Foundation(简称WCF)。微软将在Windows XP,Windows Server 2003 和Windows Vista操作系统中提供对WF的支持。

WF在当前和未来都能够得到微软操作系统平台的支持,这样很可能会造就出一个WF被持久而广泛地应用的局面。我们可以在智能客户端软件和简单的控制台程序中应用WF。我们也可以在服务器端软件中应用WF,这类软件包括了Windows服务、ASP.NET的Web应用程序和Web服务。WF还将出现在微软自行开发的几款产品中,比如Windows SharePoint Services 和 Microsoft Biztalk Server。现在,我们来看看WF都有哪些本质特征。

1.2.1  活动

活动(Activity)是WF中的基本构件。活动构成了一个工作流中的各个步骤或任务,它们实现了对工作流的定义。我们可以按层次把多个活动组织起来,然后把它们作为指令输入给工作流引擎去执行。活动能够影响工作流的执行路径,而人和软件系统都可以参与其中。

WF中的所有活动都继承自Activity类。Activity类定义了工作流中所有活动都要具备的通用操作,比如Execute和Cancel方法。这个类还包括了通用属性的定义,比如Name和Parent属性,以及通用事件的定义,比如Executing和Closed事件(当一个活动执行完毕,它会引发Closed事件)。下面的截屏图显示的是在Visual Studio 2005类设计器中看到的Activity类。

WF以“基本活动库”的形式为用户提供了一系列预制活动模块。在基本活动库中有一些简单活动,比如像IfElseActivity 和 WhileActivity这样的控制流操作活动,开发者可以把它们作为构建复杂活动的基础。基本活动库还包括了更多的活动,它们当中有的能够等待事件,有的能够调用Web服务,有的能够执行规则引擎,等等等等,不一而足。

1.2.1.1      自定义活动

Windows Workflow允许开发人员通过创建自定义活动的方式对基本活动库的功能进行扩展,这样就能够解决特定领域的问题。例如,为了提高比萨饼送餐流程的效率,我们可以采用SendOrderToKitchen 或 NotifyCustomer之类的自定义活动。

所有的自定义活动最终都会继承自Activity基类。工作流引擎在执行一个活动时,不会区分它是由微软,还是由第三方提供的。

我们可以用自定义活动构建出专门用于创建工作流解决方案的域特定语言。域特定语言的应用可以极大地简化问题空间。比如,我们可以自定义一个SendOrderToKitchen活动,用它把一个Web服务调用和其它处理逻辑封装在一起。这个活动显然是为餐厅问题域定制的。与使用基本类库中的简单活动相比,使用这个经过高级抽象的活动做开发必然会提高程序员的工作效率。即便是一位餐厅经理也会理解SendOrderToKitchen的含义,并且有可能在可视化工作流设计器中使用到它。如果你听说某位餐厅经理更倾向于使用WhileActivity和InvokeWebServiceActivity活动,那才怪了!

 
C#,VB.NET和XML都是通用语言,能够应用到众多的领域中去解决不同类型的问题。因此,我们使用C#既能为比萨饼餐厅,也能为医院编写软件,而且C#能够同等地满足这两个领域对开发语言的要求。“域特定”语言可以为特定领域内的问题提供出色的解决方案。如果使用餐厅工作流域特定语言为一个餐厅编写软件,那么这套软件可能会提高餐厅的生产效率;如果还是用这门语言为医院搞开发,那可就没人敢为软件的应用效果打包票了。

时间: 2024-08-13 03:24:09

【翻译习作】 Windows Workflow Foundation程序开发-第一章02的相关文章

【翻译习作】 Windows Workflow Foundation程序开发-第一章05

1.3      开发我们的第一个工作流 也许你曾经在这样的产品经理手下搞过开发:他总是在你身边转悠,并不时的问一句“你还没做完吗?”.在这一部分,我们将用一个简单的Windows Workflow程序把这个招人烦的产品经理替换掉.这个例程无法向你展示WF平台的全部功能,但它可以让你领略到如何用WF创建并运行工作流. 在开始之前,我们需要下载并安装.NET 3.0框架.安装程序可以在 http://netfx3.com 找到.Visual Studio 2005的所有版本都支持在.NET 3.0

【翻译习作】 Windows Workflow Foundation程序开发-第一章03

1.2.2.Visual Studio 2005扩展包 微软也为Windows Workflow开发者提供了Visual Studio 2005扩展包.扩展包将许多功能集成到Visual Studio里,其中就包括一个用于编制工作流的可视化设计器.下面就是可视化设计器的截屏图. 这个设计器的窗口式样与我们所熟悉的Windows和Web表单设计器保持一致.Toolbox(工具箱)窗口中列出了可以拖放到设计器台面上的所有活动.我们也可以把自定义的活动添加到Toolbox中去.一旦把一个活动放置到设计

【翻译习作】 Windows Workflow Foundation程序开发-第一章01

第 1 章    欢迎来到工作流的世界 …思想如蝴蝶般飞到我身边 —— Gossard / Vedder (译注:Gossard与Vedder是来自Pearl Jam乐队的2名乐手,该句出自他们的歌曲<Even flow>) Windows Workflow可被看作是继COM+和分布式事务协调器(DTC)之后,Windows平台上最令人瞩目的一款中间件产品.它们之间的区别在于:不是每一个软件应用都需要进行分布式事务处理:但几乎每个软件都要在其内部实现工作流.为了能够领会微软设计Windows

【翻译习作】 Windows Workflow Foundation程序开发

近期整理硬盘,把09年的翻译习作<Windows Workflow Foundation程序开发>找出来了.现在又把译文过了一遍,做了些修改,贴出来献丑了.原书是<Programming Windows Workflow Foundation: Practical WF Techniques and Examples using XAML and C#>,作者K. Scott Allen,由Packt Publishing Ltd.出版. 当时我开始关注.NET 3.0,尤其对WF

【翻译习作】 Windows Workflow Foundation程序开发-前言

Windows Workflow Foundation程序开发-基于XAML和C#的WF实战技术与例程 ——C#程序员的WF功能与编程接口技术指导 前言 Windows Workflow Foundation(简称WF),是一项对工作流进行定义.执行和管理的技术.它是.NET框架3.0版的一部分,并且将来会被集成到Windows Vista操作系统中. 继COM+和分布式事务协调器之后,WF可被看作是Windows平台上最令人瞩目的一款中间件产品.WF与前两者的区别在于:不是每一个软件应用都需要

Windows Workflow Foundation技术介绍(基于.NET Framework 4.5)

Windows Workflow Foundation技术介绍(基于.NET Framework 4.5) 转自:http://www.cpiso.cn/jsyj/ghxx/2014/5/15/459.shtml Microsoft Windows Workflow Foundation (WF) 是一个可扩展框架,用于在 Windows 平台上开发工作流解决方案.Windows Workflow Foundation 同时提供了 API 和一些工具,用于开发和执行基于工作流的应用程序.Wind

你还记得windows workflow foundation吗

很多年前,windows workflow foundation还叫WWF,而直译过来的名称让很多人以为它就是用来开发工作流或者干脆就是审批流的. 博主当年还是个懵懂的少年,却也知道微软不会大力推一个面向如此具象的业务场景的技术,于是特地找了一本<WF本质论>,当看到“程序即数据”这个论断时,被深深震撼了.可能这只是作者的随意一写,但当时正是泛型方法.lamda表达式.匿名委托啥的开始出现的时候,作者的这一说法在某种程度上暗合了博主平常的编程思想.于是逻辑与数据,算法与结构,它们之间的界限在我

《Sams Teach Yourself Windows? Workflow Foundation in 24 Hours》读书笔记目录

目录 1 Part I - The Basics 1.1 Hour 1 - Understanding Windows Workflow Foundation 1.2 Hour 2 - A Spin Around Windows Workflow Foundation 1.3 Hour 3 - Learning Basic Hosting 1.4 Hour 4 - Learning Host-Workflow Data Exchange 1.5 Hour 5 - Creating an Esca

《WF in 24 Hours》读书笔记 - Hour 1 - Understanding Windows Workflow Foundation

1.1 Hour 1 - Understanding Windows Workflow Foundation 1.1.1 What workflow is in general A workflow is logic-consisting of one or more steps that are predicated by one or more conditions-that a system or person must perform to complete a function. Be