品牌:舒克拉(Dharma Shukla)
基本信息
·出版社:机械工业出版社
·页码:322 页码
·出版日:2007年
·ISBN:9787111219637
·条码:9787111219637
·版次:2007年8月第1版
·装帧:平装
·开本:16开 16开
内容简介
★第一本WF技术图书,带你了解.NET 3.0的核心技术之一。
[精彩试读一]
"好戏即将上演......"-Don Box, 微软公司软件架构师
Windows Workflow Foundation(WF)使用了一种开创性的方法来编写和执行程序。WF程序是由一些可恢复的语句块(称为活动)组成的,封装了专有领域的逻辑和控制流的模式,这些模式都可以映射到真实世界的处理流程。
本书两位作者从WF项目开始立项就参与这个项目,负责规划、设计、开发了其中的大部分技术。在本书中,作者高屋建瓴地探讨了WF中的关键概念和整体架构,不仅涉及如何使用WF,还涉及为什么这样使用WF,揭开了WF技术的神秘面纱。很多WF开发者都想知道如何通过编写活动来高效使用和扩展框架,本书提供权威性的解释和答案。通过简单而极具说明性的例子,本书演示了如何利用WF的可扩展性编程来构造具体领域的程序。
本书详细讲解Windows Workflow Foundation(WF)的运作原理,并在解析原理的过程中给出WF的设计初衷。WF使用了一种开创性的方法来编写和执行程序。本书两位作者从WF项目立项开始就参与这个项目,负责规划、设计、开发了其中的大部分技术。在本书中,作者高屋建瓴地探讨了WF中的关键概念和整体架构,不仅涉及如何使用WF,还涉及为什么这样使用WF,揭开了WF技术的神秘面纱。通过简单而极具说明性的例子,本书演示了如何利用WF的可扩展性编程来构造具体领域的程序。
WF编程模型关键部分的核心概念和观点。
活动的执行模型,包括活动自动机的细节、书签机制、调度策略以及WF运行时的线程模型。
高级执行概念,包括活动执行上下文、事务、持久化点、钝化、错误处理、取消操作、补偿和异步。
在应用程序中宿主WF运行时。
活动组件模型,包括验证的细节、WF程序的编译、序列化以及可视化。
数据绑定、XAML、依赖属性以及WF程序元数据。
声明性条件及规则、活动设计器以及如何驻留设计器。
自定义控制流模式,从简单的顺序和迭代控制流到复杂的图和状态机控制流等各种层次。
运行期间对WF程序实例的动态编辑。
作者简介
Dharma Shukla 微软架构师,工作目标为下一代编程模型。他是WF项目组的一名支柱成员,在定义WF体系结构的过程中扮演了重要的角色。
Bob Schmidt 微软高级程序经理,他的工作目标也是下一代编程模型。自2003年开始,他的主要精力放在了WF的设计上。他曾获得斯坦福大学计算机科学硕士学位。
媒体推荐
如果我要编写一本工作流的图书,那么,本书就是我想写的。
——Jeffrey Richter (http://Wintellect.com)
Dharma Shukla和Bob Schmidt用一种易于理解而又权威的方法介绍了工作流技术,真的值得一读。
——Clemens Szyperski
微软公司软件架构师
Dharma和Bob使得任何已经精通C#和.NET框架的开发者以及那些想要登堂入室的开发者都可以学习和掌握这门技术,他们做的非常不错。可别错过了这本书。
——Joe Duffy
微软公司CLR组项目经理
编辑推荐
“好戏即将上演……”——Don Box,微软公司软件架构师
Windows Workflow Foundation(WF)使用了一种开创性的方法来编写和执行程序。WF程序是由一些可恢复的语句块(称为活动)组成的,封装了专有领域的逻辑和控制流的模式,这些模式都可以映射到真实世界的处理流程。
本书两位作者从WF项目开始立项就参与这个项目,负责规划、设计、开发了其中的大部分技术。在本书中,作者高屋建瓴地探讨了WF中的关键概念和整体架构,不仅涉及如何使用WF,还涉及为什么这样使用WF,揭开了WF技术的神秘面纱。很多WF开发者都想知道如何通过编写活动来高效使用和扩展框架,本书提供权威性的解释和答案。通过简单而极具说明性的例子,本书演示了如何利用WF的可扩展性编程来构造具体领域的程序。
目录
第1章 剖析WF1 1.1 线程进程灵活性4 1.1.1 书签6 1.1.2 可恢复语句组件9 1.2 复合语句组件11 1.3 控制流15 1.3.1 复合语句组件17 1.3.2 控制流的健壮性19 1.3.3 现实中的控制流20 1.4 程序的声明21 1.5 本章小结23 第2章 WF程序24 2.1 WF编程模型24 2.1.1 活动24 2.1.2 复合活动28 2.1.3 WF程序30 2.2 WF运行时33 2.3 本章小结38 第3章 活动的执行40 3.1 调度41 3.2 活动自动机42 3.2.1 活动的执行状态和结果43 3.2.2 活动执行上下文46 3.2.3 活动的服务47 3.3 回顾书签49 3.3.1 WF程序的执行51 3.3.2 WF程序队列51 3.3.3 计时器57 3.4 活动的初始化和终结化60 3.5 组件活动的执行64 3.6 WF线程74 3.7 本章小结79 第4章 活动执行的进阶话题80 4.1 活动执行上下文80 4.1.1 活动执行上下文管理器82 4.1.2 迭代控制流84 4.1.3 交错式迭代93 4.1.4 活动执行上下文的结束96 4.1.5 AEC和WF程序的钝化96 4.2 取消98 4.2.1 取消状态98 4.2.2 复合活动的取消104 4.2.3 提早完成106 4.2.4 取消处理器107 4.3 错误处理109 4.3.1 异常状态109 4.3.2 复合活动的错误处理112 4.3.3 错误传播113 4.3.4 错误处理器113 4.3.5 未处理错误114 4.3.6 为错误处理建模114 4.3.7 ThrowActivity活动119 4.4 补偿119 4.4.1 补偿状态120 4.4.2 补偿处理器122 4.4.3 默认补偿123 4.4.4 自定义补偿125 4.5 本章小结128 第5章 宿主应用程序129 5.1 WF运行时129 5.1.1 服务131 5.3 创建WF程序实例134 5.4 运行WF程序实例144 5.5 WF程序实例的钝化150 5.5.1 运行期间活动序列化156 5.5.2 基于代理的序列化156 5.6 WF程序实例的挂起162 5.7 WF程序实例的中止164 5.8 放弃WF程序实例165 5.9 WF程序实例的完成166 5.10 WF程序实例的生命周期166 5.11 本章小结175 第6章 事务176 6.1 TransactionScopeActivity活动177 6.2 保存点181 6.3 事务服务183 6.4 数据的事务化传输187 6.5 本章小结188 第7章 进阶话题189 7.1 依赖属性189 7.1.1 活动元数据190 7.1.2 活动数据绑定195 7.1.3 附着属性198 7.2 使用XAML定义活动类型200 7.3 活动组件模型208 7.4 验证211 7.4.1 活动验证器217 7.4.2 复合活动的验证217 7.4.3 验证选项219 7.5 编译220 7.5.1 编译器参数221 7.5.2 编译器输入222 7.5.3 验证和编译223 7.5.4 活动代码生成224 7.6 设计器序列化229 7.6.1 代码序列化231 7.6.2 XAML 序列化233 7.6.3 集合序列化234 7.7 本章小结236 第8章 杂项237 8.1.2 代码型条件239 8.1.3 声明性条件241 8.1.4 规则243 8.1.5 规则集的执行247 8.2 动态编辑运行中的WF程序实例248 8.3 跟踪服务255 8.4 设计器261 8.4.1 设计器基类265 8.4.2 附着属性269 8.4.3 设计器动作272 8.4.4 设计器图形275 8.4.5 设计器布局管理277 8.4.6 设计器主题279 8.4.7 工具箱条目282 8.5 驻留设计器284 8.5.1 回顾WorkflowView控件284 8.5.2 动态解析活动设计器288 8.6 本章小结290 附录A 活动自动机291 附录B 控制流模式292
……[看更多目录]
文摘
前言
前言 Windows Workflow Foundation(WF)是一个通用的编程框架,它可用于创建需要对外部实体的信号作出响应的交互式程序。交互式程序的基本特征是它会在执行期间暂停某一长短未知的时段,以等待输入。 当然,交互式程序并不是什么新现象。自从计算机网络出现以来,交互式程序就广泛应用于两台计算机之间的通信。这些技术还适用于运行在单台计算机上的数据交换。这种技术的变体涵盖了从套接字到Web服务等各种技术,这些技术在程序通信领域已应用了多年。尽管在这几年中,编程模型的互操作性、可伸缩性以及易编程性等方面有了长足的发展,但开发人员在程序交互方面的投入依然匮乏。比如,时下流行的Web编程模型,这类模型通常为开发人员强加控制流模型,且非常生硬。因此,WF希望改变这一切。 WF编程模型的核心概念就是活动—WF程序中的程序语句。活动的执行具有固有的可恢复性,同时以片段式的方式执行,它根据活动与外部实体的交互来暂停和恢复执行。当你在深夜合卷睡觉前,一般都会在书本当前阅读的位置放置一个书签,对WF中的活动来说也是这样,当活动等待外部输入时,它会在当前执行的位置做一个书签,当收到外部输入打算恢复执行时,则从书签的位置继续执行。 WF是一个框架,而不是一组由语法定义的编程构造。WF中活动的概念是可扩展的,这使得WF程序中的表达式以及控制流相对于C#或Visual Basic这样的语言要丰富得多。你可以使用领域专有的活动以及特定的控制流结构来表示WF程序,因此,它能通过捕捉复杂的人机交互来高度拟真特定的场景。 WF运行时是一个元运行时,它建立在通用语言运行时(CLR)之上,并管理着WF程序的执行。在一个分布式的环境中,WF程序可以在不需要做任何额外工作的前提下,相当自然地暂停或恢复,也可以执行任意长一段时间。在WF程序空闲时,它既不会执行失败,也不会过度消耗系统资源。在WF的上下文中,CLR的工作就是管理那些在内存中代表WF程序的对象。而WF运行时的工作就是管理WF程序的完整生命周期,WF程序的生命周期是可以跨越CLR线程、应用程序域、操作系统进程甚至机器的。 总之,WF提供了一个编写和执行交互式程序的编程模型。WF程序是由被称为活动的领域相关程序语句构建的。这允许领域专家可以使用该领域的概念来描述。 关于本书 我们撰写这本书有一个简单的理由,那就是我们都相信在WF的核心有一个令人瞩目的概念。在当今主流平台上,这些概念还是第一次出现。WF的面向活动编程方法采用了与时下流
……[看更多书摘]
点此购买报价¥33.40