智能客户端平台体系结构指南
获得设计智能客户端解决方案所需的建议。与软件行业专家合作开发的 Microsoft’s Platform Architectural Guidance,为您提供了构建应用程序可以使用的最佳设计模式。
智能客户端体系结构和设计指南
获得关于为您的智能客户端解决方案设计一个稳固的体系结构的说明性指南,以便您可以将胖客户端应用程序的优势与瘦客户端应用程序的管理功能组合在一起。
1 .应用程序块
1.1 缓存应用程序块
Microsoft .NET Framework 类库,它允许您通过缓存 Web 服务数据来提高分布式应用程序的效率和可伸缩性,这可以节省刷新始终是当前的数据所需要的时间和资源。数据可以通过多种格式进行缓存,包括 Microsoft SQL Server 2000 数据库、内存映射文件或 singleton 对象。“缓存应用程序块”还包括用于缓存、清理、到期和数据保护的示例类。
1.1 配置管理应用程序块
一个简单但灵活的解决方案,您可以在所有应用程序中使用它来管理配置数据。具体来说,该解决方案可以提供一组方法,利用这组方法您可以读取和写入应用程序配置数据,而不必通过灵活的数据模型(使用内存中的任意数据结构来表示配置数据)在代码中实例化对象或执行复杂的数据转换。
1.1 数据访问应用程序块
“数据访问应用程序块”是一个包含经过优化的数据访问代码的 .NET 组件,它可以帮助您调用存储过程并根据 SQL Server 数据库来发出 SQL 文本命令。本文提供有关在 .NET 的多层应用程序中实现基于 ADO.NET 的数据访问层的指南。文中集中讨论一系列常见的数据访问任务和方案,并介绍了可帮助您选择最适合的方法和技术的指南。该指南归纳了性能和资源管理的最佳方法,并且能方便地在您自己的 .NET 应用程序中作为构建块而使用。如果使用该指南,您将减少了需要用于创建、测试和维护的自定义代码的数量。
1.1 异常管理应用程序块
“.NET 异常管理应用程序块”由体系结构指南和应用程序块构成。本文讨论了使用 .NET 技术的异常管理系统的设计和实现原则。文中集中讨论了以高度可维护和受支持的方式处理 .NET 应用程序中的异常的过程。“.NET 异常管理应用程序块”提供了处理异常的简单但可扩展的框架。只需使用一行应用程序代码,您可以很容易地将异常信息记录到事件日志,或者通过创建自己的组件将异常详细信息记录到其他数据源或通知操作人员来对其进行扩展,而不会影响您的应用程序代码。“.NET 异常管理应用程序块”可以简便地在您自己的 .NET 应用程序中作为构建块而使用。
1.1 记录应用程序块
在您的应用程序中构建有用的记录功能是一个极大的挑战。至少,您需要确定什么信息适合记录、设计事件本身、并使它们可以通过适当的格式进行分析。有效的记录对于解决应用程序中出现的问题很有用,还可以提供有用的数据进行分析,从而帮助确保应用程序继续高效安全地运行。为帮助提供企业应用程序的有效记录,Microsoft 已设计了最新的模式与实践应用程序块:记录应用程序块。该应用程序块是一个可重用的代码组件,它使用 Microsoft Enterprise Instrumentation Framework (EIF) 和 Microsoft .NET Framework 来帮助您设计工具应用程序。
1.1 更新应用程序块
.NET 解决方案,它提供了一种“拉模式”解决方案,可以自动从中央位置下载应用程序更新,它设计用于那些希望将 Windows 窗体的大量功能与基于 Web 的应用程序的集中管理功能相结合的组织。通过使用“更新应用程序块”下载应用程序更新,您可以克服通过浏览器下载 Windows 窗体应用程序的安全“沙盒”限制,仍然可以通过应用程序过程维护控件和安全。
1.1 用户界面处理应用程序块 v2.0
“用户界面处理应用程序块”为开发用户界面过程提供了简单但可扩展的框架。文中旨在将控制流和状态管理从用户界面层抽取到用户界面处理层。
1.1 离线应用程序块
“离线应用程序块”包含使智能客户端用户在离线工作时仍然能够享受无缝体验的功能。它演示了一些可能的方法,用于:检测网络连接是否存在。缓存所需数据,以便应用程序在离线时仍然可以运行。当应用程序再次连接到网络时,将客户端应用程序状态和/数据与服务器进行同步。
2.开发人员创建智能客户端的十大理由
构建以利用新的 XML 技术,智能客户端软件将 Internet 所触及的内容与本地计算机硬件的强大功能结合起来,以集中体现二者的优势。
探究开发人员开始构建智能客户端应用程序的 10 个最佳理由:
1. 改善的异类网络环境可靠性 改善的异类网络环境可靠性
智能客户端应用程序可以将数据存储在本地并以智能方式使用网络,从而提供功能性和可靠的操作,即使在网络不可用时也如此。当使用者是移动用户并且需要提高工作效率时,这一功能尤为重要。
2. 提高的性能和可伸缩性 提高的性能和可伸缩性
智能客户端应用程序使用本地操作系统的功能和本地 CPU 的计算能力。具备专用的 CPU,对于获取高性能非常重要。此外,迅速运行本地代码的功能可加载许多任务,这些任务由服务器在典型的 Web 应用程序产品中完成。 提高的性能和可伸缩性
3. 开发应用程序更为快速 开发应用程序更为快速
具有不同背景的开发人员都发现智能客户端应用程序更易于编写。开发时不需要考虑诸如会话管理和服务器往返访问这样的事情。编程模型的直观性与已在类库中提供的丰富代码,使开发人员能够获得较高的工作效率。
4. 访问本地计算机功能(例如 DirectX) 访问本地计算机功能(例如 DirectX)
在大多数情况下,应用程序需要使用只能通过智能客户端应用程序进行访问的计算机中具有的硬件功能。这类功能可以是 I/O 设备或图形加速器(如在游戏中)。
5. 与现有的桌面应用程序和系统相集成 与现有的桌面应用程序和系统相集成
这种简单的 interop 机制附带有利用 .NET Framework 构建智能客户端的基础结构,该机制使开发人员能够根据自己的需要以本机方式进行编程。此外,使用 .NET Framework 构建的应用程序可以与现有的系统和打包的应用程序相连,而无需顾虑它们的基础平台。
6. 易于部署和保护安全 易于部署和保护安全
利用无接触 (No-Touch) 部署,只需通过将必要的组件复制到最终用户可以访问的 Web 服务器上,就可以在目标 PC 上部署和更新基于 Windows 的智能客户端应用程序。此外,使用代码访问安全可以更好地控制在客户端计算机上执行,从而为适当的用户提供正确体验的智能客户端代码。
7. 移动支持和数据同步功能 移动支持和数据同步功能
智能客户端应用程序可通过不同的格式因素(Smartphones、PDA、Tablet PC、Laptops)在各种移动平台上使用,共享统一的编程模型。此外,由于网络对于移动应用程序而言不是可靠的资源,因此开发人员可以将数据同步功能添加到该应用程序中以确保顺利操作。
8. 本机 XML 和 Web 服务支持 本机 XML 和 Web 服务支持
.NET Framework 从一开始设计时就考虑到了 XML 和 Web 服务的支持问题。这就使数据操纵和与异类系统的应用程序集成更为容易
9. 更好的用户体验和用户界面 更好的用户体验和用户界面
智能客户端应用程序可以使用底层操作系统的功能,从而提供丰富的、响应迅速和直观的用户体验,而这种体验并不依赖于服务器的往返访问或浏览器的呈现功能。
10. 灵活的数据访问和本地的数据缓存 灵活的数据访问和本地的数据缓存
智能客户端应用程序可以是智能地在应用程序内部处理数据。根据不同的考虑因素,开发人员可以选择存储和使用本地数据或连接到远程数据库,以使应用程序在任何需要的情况下都能够运行,而并不仅限于网络连接可用的情况下。