Where are We?


This chapter began with a simple reactive program and the issues related to making that kind of program scalable and robust. Leveraging the ideas of bookmarks and continuations, we first decoupled the logic of our program from a given thread; the elimination of stack reliance, and the factoring of our program logic into distinct chunks of code, made our program resumable. We also made bookmarks available for serialization, which allowed us to passivate them; with this step, our program achieved process agility. We outlined the design of a listener, and a general-purpose runtime environment for resumable programs, that can be used to efficiently manage the execution of many instances of many different resumable programs within a distributed architecture.

But a programming model for bookmarks was not enough to buy us the control flow we were seeking. So we decomposed our program into a set of smaller building blocks, and standardized the notion of a resumable program as a composition of these resumable program statements. We built a set of composite program statements that map to familiar control flow constructs in C#. We also showed how to build composite program statements that capture more complex control flow patterns. Finally, we took advantage of the fact that resumable programs are data. We declared our program using formats other than C#, including data in a database table, a domain-specific language, XAML, and also a graphical notation, which allowed us to recover a natural style of control flow.

In short, we have engineered Windows Workflow Foundation.




Essential Windows Workflow Foundation
Essential Windows Workflow Foundation
ISBN: 0321399838
EAN: 2147483647
Year: 2006
Pages: 97

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net