(翻译)UIP Application Block学习系列 ( 四 ) UIP Application Block的设计目标

UIP Application Block可以帮助您:

l         从你的用户界面中抽象所有的导航和工作流代码

l         可以在不同类型的应用程序中使用相同的编程模型

l         从用户界面中删除所有的状态管理

l         通过进程持续对状态进行快照

下面将详细讨论上面的各项:

从你的用户界面中抽象所有的导航和工作流代码

一个应用程序的工作流是一个业务过程,不是一个用户界面过程,所有它的控制应该放在表现层以外。代码抽象也可以帮助你更容易的维护和扩展现存的应用程序。

UIP Application Block从表现层中抽象出工作流代码到用户界面进程层。作为工作流内的导航它并不硬编码 UI元素,如果流程或者你的应用程序出现变更,则你只需要重写进程,而不是进程中的UI元素。

使用一个编程模型

你可以先为内部用户创建一个winform应用程序,然后再为外部用户创建一个web应用程序。你可能开发了一个web应用程序但是不久又要把它变成windows应用程序。如果你为不同类型的应用程序使用相同的编程模型,你就可以更容易的在它们之间进行转换。

使用UIP Application Block,你可以确定所有的导航和工作流代码都在UI之外。这就允许你添加一个新的View而重用现存的应用程序。

从用户界面中删除所有的状态管理

在许多应用程序中,状态是存储在 UI层的。这就表明需要复杂的代码来存储,访问和操作状态。另外,状态是依靠UI类型的,不同类型的应用程序有不同的传输方式。

UIP Application BlockUI中抽象出了状态,把它存储在一个一般状态对象中,可以用block类进行访问。就是说任何使用View都可以使用UIP状态而不用管它在哪里存储,或者怎样访问它。如果View类型改变了,状态管理代码不会受到影响。

通过进程持续对状态进行快照

在许多应用程序中,想在任何时间都存储一个作业的状态是非常困难的。大多数应用程序用事务封装作业或者子作业,但是仅仅允许一个完整的事务或者成功或者失败。这就是说如果一个系统突然关闭或者用户离开了网站,那么回到它离开的时刻是非常困难的。

UIP Application Block包含状态保持机制,允许用代码保持UIP状态。这就允许你开发的应用程序在预定时间内保持UIP状态。除了把它存储在内存中,也可以存储在数据库中

posted @ 2007-08-28 09:50  GodSpeed  阅读(427)  评论(0编辑  收藏  举报