西姆极客 码农 转载:应用程序架构指南

转载:应用程序架构指南

By JD
原文地址:http://shapingsoftware.com/2008/06/01/app-architecture-guide/

应用程序架构(Application Architecture)

程序体系结构的简要说明:

  1. 用户界面组件(User interface components)

    大多数解决方案需要为用户提供与应用程序交互的方式。 UI组件为用户呈现和格式化数据,并获取和验证数据。
    (格式化数据,不是指删除数据,而是指为数据提供格式显示,例如字体、颜色、排列等)

  2. 用户进程组件(User process components)

    在许多情况下,用户与系统的交互遵循可预测的过程。 为了帮助同步和协调这些用户交互,使用独立的用户进程组件实现进程驱动是非常有用的。 这样,在用户界面元素中过程流(process flow)和状态管理逻辑本身不是写死的(hard-coded),并且。相同的底层用户交互“引擎”可以重复使用。

  3. 业务组件(Business components)

    无论业务流程是由单个步骤还是由工作流(workflow)编导组成的,您的应用程序都可能需要实现业务规则和执行业务任务的组件。 业务组件实现应用程序的业务逻辑。

  4. 业务工作流(Business workflows)

    从用户进程收集到所需数据之后,可以使用该数据来执行业务流程。 业务工作流定义并协调(coordinate )了连续运行的(long-running)且多步骤的(multi-step)业务流程。

  5. 服务代理(Service agents)

    当业务组件需要使用外部服务中提供的功能时,您可能需要提供一些代码来管理与该特定服务进行通信的语义。 服务代理隔离了从应用程序调用各种服务的特性,并可以提供其他服务,例如服务公开的数据格式与应用程序所需格式之间的基本映射。

  6. 服务接口(Service interfaces)

    要将业务逻辑公开为服务,您必须创建支持其不同消费者所需的通信合同(基于消息的通信,格式,协议,安全性,异常等)的服务接口。 服务接口有时被称为业务外观。

  7. 数据访问逻辑组件(Data access logic components)

    大多数应用程序和服务都需要在业务流程的某个时刻访问数据存储。 在单独的数据访问逻辑组件层中抽象访问数据所需的逻辑是有意义的。 这样做可以集中数据访问功能,并使配置和维护更加容易。

  8. 业务实体组件(Business entity components)

    大多数应用程序都需要在组件之间传递数据。 例如,在零售应用程序中,必须将产品列表从数据访问逻辑组件传递到用户界面组件,以便可以向用户显示产品列表。 数据用于表示现实世界的商业实体,例如产品或订单。 在应用程序内部使用的业务实体通常是数据结构,例如DataSet,DataReaders或可扩展标记语言(XML)流,但它们也可以使用代表现实世界实体的自定义面向对象的类来实现,例如应用程序使用产品或订单类。

  9. 安全性,操作管理和通信组件(Components for security, operational management, and communication)

    您的应用程序可能还会使用组件来执行异常管理,授权用户执行某些任务以及与其他服务和应用程序通信。

演示、业务和数据层(Presentation, Business, and Data Layer)

使用演示层,业务层和数据层来组织和概述应用程序的逻辑:

By JD

发表评论

电子邮件地址不会被公开。 必填项已用*标注

16 + 7 =

Scroll Up