快速业务通道

Jt —— 面向Java模式的框架 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
组件是一个自包含/独立单元。与其他组件和应用程序的惟一通信机制是通过消息传送。

解耦。MDP 最小化耦合。同样,每个组件是一个自包含单元,可独立于系统其余部分执行。

可重用性。MDP 提高可重用性。这类似于 “Lego” 集中的构建块。可以基于共享一种简单互联方式的简单片段(例如,公共接口)构建复杂模型。该方法的功能来自于这些片段组装的组合数。可将使用消息传送设计模式的组件交换地插入复杂应用程序中。组件可随意以任何配置进行组装。一个组件的用户需要知道组件处理的输入/输出消息。应用程序也能够重用来自其他组件级应用程序的组件:如果使用消息传送设计模式,就可从另一个应用程序中提取一个组件。

QA/测试流程。MDP 促进测试和调试工作。通过发送消息到组件并验证回复消息(黑盒测试),可将组件作为独立单元进行测试。一般而言,可以通过一个测试装置执行单元测试。无需在组件代码内包含测试代码,因为这很耗时且容易引发意外的软件问题。

设计流程。MDP 提供和简化设计流程。多半设计工作就是,定义满足系统需求所需的组件集和每个组件需要处理的输入/输出消息。UML 设计图与实现所需的组件之间有一个紧密的对应关系。由于所有组件共享同一个消息传送接口,可以将它们轻松添加到 BPM/BPEL 图。如前所述,这类似于构建块,可通过多种方式重用和连接。

开发流程。由于依赖于消息传送的每个组件都是自包含的,一个团队中的成员可以协作进行开发,无需介入其他人的代码/工作。在理想情况下,一个组件/包可由一个人专门负责。团队其余成员需要知道其他人要处理的输入/输出消息。无需更改其他人的代码。而且不需要或很少需要创建、维护和合并多个版本的代码。测试/QA 工程师可以通过一个测试装置独立执行其测试。总而言之,无需添加测试代码。

日志记录和调试。由于所有组件使用相同的消息传送接口,消息会被自动记录。这降低了在代码中添加 print/logging 语句的需求,这个工作很耗时且容易出错。看一下记录的消息,用户通常就能够快速查出引起问题的消息/组件(只需少量工作或无需额外工作)。

开发速度和成本。基于上面概括的所有原因,消息传送设计模式能够极大地提高开发速度并降低成本。

质量和软件维护。质量和软件维护工作也由于上述原因得到改进。

为了充分利用这个设计模式,人们在建模、设计和构建软件应用程序时需要考虑消息传送方面:独立的实体(例如,组件)相互交换消息。这可能需要学习和培训。尽管一个消息传送方法自然、直观且与现实世界一致,传统方法基于库和方法/程序调用(包括本地和远程)。

MDP 如同一个状态机。因此可以通过复制组件并通过 consensus 算法协调其交互对其进行扩展,从而以一种更自然、直观的方式提供容错功能。一般来说,向一个不使用 MDP 的程序添加容错特性是一项很困难的任务。

实现和代码示例:

消息传送设计模式是使用 Jt 消息传送接口(JtInterface)实现的。该接口包括一个方法:

清单 1. 消息传送接口

public interface JtInterface { /**   * Jt messaging interface used for the implementation   * of the messaging design pattern.   * Process an input message and return a reply (output message).   */   Object processMessage (Object message); }

消息传送接口(JtInterface)简单而功能强大。该接口的简易性具有欺骗性。所需要的只是一个方法。它充当一个通用消息传送接口,适用于远程和本地框架组件。该接口处理任何类型的消息(对象类)。尽管这里提出了一个 Java 实现,不过 MDP 和相关框架可以使用任何计算机语言或技术予以实现。

Jt —— 面向Java模式的框架(3)

时间:2010-10-26 IBM

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号