没有合适的资源?快使用搜索试试~ 我知道了~
智能客户端体系结构与设计指南.pdf
4星 · 超过85%的资源 需积分: 9 94 下载量 104 浏览量
2007-01-31
22:39:06
上传
评论
收藏 3.33MB PDF 举报
温馨提示
试读
124页
智能客户端体系结构与设计指南.pdf
资源推荐
资源详情
资源评论
文档说明:
制作人:badnewfish
http://badnewfish.cnblogs.com
http://badnewfish.spaces.live.com/
原稿:微软 MSDN
智能客户端体系结构与设计指南
摘要:本指南为您提供一个说明性的指导 — 在构建智能客户端解决方案时,如何克服体系
结构上的桎梏以及设计上的问题。此外,还提供了如何将传统的胖客户端应用程序与瘦客户
端应用程序的可管理性这二者的优势合二为一的指导。
下载
单击此处,从 Microsoft Download Center 下载该指南的 PDF 版本。
本页内容
本指南面向的读者
预备知识
本指南的内容
合著者与审校者
对本指南的反馈
社区与新闻组支持
本指南面向的读者
本指南面向那些正在使用 Windows 窗体技术开发基于 Microsoft .NET Framework 的智能客
户端应用程序的软件架构师与开发人员。
返回页首
预备知识
要最有效地使用本指南,您需要具备使用 .NET 开发技术与技能的经验。您需要熟悉常规的
分布式应用程序体系结构的知识,并且如果您已经实施了 .NET Web 应用解决方案,就应该
了解您自己的应用体系结构和部署模式。
返回页首
本指南的内容
本指南由 Microsoft .NET 程序经理 Mark Boulter 撰写的前言以及各章节组成,其中每一章
都针对一个与智能客户端相关的主题。根据需要,您可以选择性地(整篇或节选)阅读每一
章。
前言 — Mark Boulter
第 1 章:简介
本章高度概括了智能客户端应用程序,以及它们的一些基本特性和优势。还讨论了一些高层
次的体系结构问题,并为您提供了帮助决策智能客户端体系结构是否适于您的应用的指导。
第 2 章:处理数据
本章考查了在客户端处理数据的诸多因素,包括数据缓存、数据并发性以及数据集的使用和
Windows 窗体数据绑定。
第 3 章:建立连接
本章讲解一些方法,利用它们使您的应用程序能够连接并使用网络资源,利用客户端计算机
上的处理能力,并且论述每个方法的优缺点。
第 4 章:偶尔连接的智能客户端
本章讲解一些您在设计和构建偶尔连接到网络的智能客户端应用程序时可能会遇到的问题。
本章解释连接的概念,论述两种实现脱机功能的主要方法,并且讲解一些保持应用程序在脱
机时仍可用而需要考虑的问题。
第 5 章:安全性考虑事项
本 章讲述智能客户端的安全性问题。智能客户端将逻辑和数据分发到客户端计算机,因此,
它涉及到的安全性与那些与瘦客户端应用程序相关的安全性截然不同 — 在这些瘦客户端上,
数据和逻辑更多的是由服务器分发。本章论述在智能客户端应用程序中数据安全性、身份验
证、授权以及代码访问安全性的角色。
第 6 章:使用多线程
本章论述在智能客户端应用程序中使用多线程而涉及到的问题。要为智能客户端应用程序提
供最佳响应,您需要认真考虑如何以及何时使用多线程。线程能显著改进您的应用程序的可
用性和性能,但是在决定它们如何与用户界面进行交互时需要对它们进行认真考虑。
第 7 章:智能客户端的部署与更新
本章论述如何在智能客户端最佳使用 .NET Framework 和 Windows 平台的部署功能,并且
指导如何选择可用的部署与更新机制。
第 8 章:智能客户端应用程序的性能
本章论述如何优化智能客户端应用程序的性能。本章分析了在设计时可采用的步骤,并且介
绍如何调整智能客户端应用程序以及诊断出现的任何性能问题。
返回页首
合著者与审校者
•特别感谢我们的审校者: Mark Boulter、Jamie Cool、Keith Yedlin、Richard Turner;Ivan
Medvedev;Ram Singh、Philip Vaughn;Jay Schmelzer、Nathan Blecharczyk;Andy
Dunn、Devendra Tiwari、Eric Leonard、Ken Perilman、Per Vonge Nielsen、Naveen
Yajaman、and Chris Sells (Microsoft Corporation)。
•特别感谢与我们合作的审校者:Steven John Pack (Avanade)。
•感谢我们的编辑人员和产品组,协助我们为读者提供了有质量保证的出版物: Sharon
Smith (Microsoft);Susan Filkins (Entirenet) 以及 Tina Burden McGrayne (Entirenet) 和
Sanjeev Garg (Satyam Computer Services)
•感谢我们的测试组: Prashant Bansode 和 Guru Shankar Sundaram (InfoSys Technologies
Limited)
•感谢我们的产品管理人员: Eugenio Pace (Microsoft) ºÍ Vasu Vijay (Electronic Data Systems)
返回页首
对本指南的反馈
我们已尽力保证本指南的准确性。如果您对本指南有任何建议,请发送电子邮件至
scagfb@microsoft.com。我们非常关注涉及以下内容的反馈信息:
•特定于技术问题的建议
•用途与可用性问题
•撰写与编辑问题
返回页首
社区与新闻组支持
本指南与许多 patterns & practices 指南一样,与新闻组关联以提供社区支持。可以使用这些
新闻组张贴问题、提供反馈,或者与其他用户联系以便与大家分享您的想法:
•MSDN 新闻组 http://msdn.microsoft.com/newsgroups/default.asp
•Windows 窗体论坛
http://www.windowsforms.net/Forums/default.aspx
•
GotDotNethttp://workspaces.gotdotnet.com/pnpsc
前言 — Mark Boulter
Microsoft_.NET Framework 和 Windows 窗体是构建智能客户端应用程序非常棒的平台,它
们将所有强大的功能、灵活性以及胖客户端应用程序模型的绝妙用户体验与基于浏览器的应
用程序的部署的简易性 和稳定性融为一体。.NET Framework 解决了 DLL 版本冲突的问题
并简化了部署。Windows 窗体有一个很强大的用户界面组件库以及一个易于使用的窗体设计
器,Windows 窗体将 Microsoft Visual Basic_ 6.0 编程模型的易用性与 .NET Framework 的强
大功能和灵活性集于一身。
然而,无论 Windows 窗体使用户界面的构建变得多么地简单,当构建智能客户端应用程序
时仍有大量设计上的困难需要解决。您的应用程序需要的正确部署模型是怎样的?如何才能
启用 脱机处理?数据的安全性又如何?当通过低带宽进行连接时,如何维持应用程序对用
户的响应?要构建一个应用程序以满足用户性能要求时,都需要做些什么?还有 很多可以
罗列的问题。
如果您对这些挑战理解的不是很透彻,并且不清楚需要做什么可以尽快在开发周期内解决这
些问题,那么尝试不断翻新的解决 方案可能会费力不讨好!《智能客户端体系结构与设计》
可以帮助您分清哪些是设计上的挑战,并指导您逐步构建出项目的完善解决方案。这本指南
完全涵盖了客户 经常问及我们的一些问题,因此我很高兴看到它的出版。
此外,再次祝愿构建客户端应用程序是一次快乐之旅!
Mark Boulter
PM 技术负责人
Mark Boulter
是
Microsoft
内部
.NET Client
组的资深
PM
。自加入
Microsoft
以来,
Mark
就
一直从事
Windows
窗体及相关类库的工作。进入
Microsoft
之前,
Mark
曾在英国的
ParcPlace Systems
担任顾问,帮助客户利用
Smalltalk
构建客户端
-
服务器以及数据分析系统。
在此之前,
Mark
用了很多年的时间(比他预料的要多很多)在
IBM
的英国公司内从事了众
多项目,包括大规模客户端
-
服务器系统、
CASE
工具、工作流引擎以及定单管理系统。
Mark
的兴趣是听后期朋克工业新浪潮和布鲁斯,阅读他能找到的任何书籍,还有就是养很
多猫。
第 1 章 — 简介
欢迎阅读《智能客户端体系结构与设计指南》。智能客户端应用程序是瘦客户端应用程序的
强大替代产品。它们可以为用户提供内容丰富且响应迅速的用户界 面,提供脱机工作的能
力,并且提供利用本地硬件和软件资源的方法。此外,可以将它们设计为在各种各样的客户
端设备上运行,包括桌面 PC、平板 PC 以及手持移动设备(如 Pocket PC 和
Smartphone)。智能客户端为用户提供了在强大且直观的客户端环境中访问信息和远程服务
的能力,并且是一种用来开发灵活的、面向用户的应用程序以 及提高用户工作效率和满意
度的有效的解决方案。
经过设计,智能客户端应用程序可以将胖客户端应用程序的传统优点与瘦客户端应用程序的
可管理 性优点结合起来。然而,要完全实现智能客户端应用程序的优点,需要考虑许多体
系结构和设计问题。本指南描述了您在设计和实现智能客户端应用程序时将面临的 体系结
构和设计难题。它提供了有关如何克服这些难题的指导,从而使您能够在尽可能短的时间内
实现智能客户端应用程序的优点。
注 有关智能客户端的其他技术资源,请参考“智能客户端开发人员中心”,网址为:
http://msdn.microsoft.com/smartclient/。在位于
http://www.microsoft.com/net/smartclient/default.mspx 的 Microsoft .NET 站点上讨论了智能客
户端的业务价值。
什么是智能客户端?
要完全了解智能客户端如何将胖客户端与瘦客户端的优点结合起来,有用的做法是分析胖/
瘦客户端应用程序模型背后的历史和基础原理,并且回顾一些与它们相关联的优点和缺点。
胖客户端应用程序
在二十世纪九十年代中期,为 Microsoft® Windows® 操作系统开发的胖客户端应用程序的
数量急剧增长。设计这些客户端的目的是利用本地硬件资源以及客户端操作系统平台的功能。
尽 管许多上述应用程序的功能令人印象深刻,但它们都具有局限性。许多上述应用程序是
独立的并且在客户计算机上工作,对它们的工作环境所知甚少或一无所知。该 环境包括其
他计算机和网络上的任何服务,以及用户计算机上的任何其他应用程序。非常常见的情况是,
应用程序之间的集成局限于使用 Windows 提供的剪切或复制并粘贴功能在应用程序之间传
输少量的数据。
有一些有助于提高胖客户端应用程序连接性的技术。例如,两层应用程序使多个用户 可以
访问驻留在网络上的公用数据,而 DCOM 使应用程序可以具有更高的分布性。(就
DCOM 而言,不再将逻辑和状态与客户计算机相联系,而是将其封装在对象内,然后在多
台计算机中分布这些对象。)但是,连接的应用程序的开发要复杂得多。随着这些 分布式
应用程序的规模和复杂性逐渐增加,将越来越难以维持客户端应用程序及它们使用的服务之
间的紧耦合。
尽管胖客户端通常提供了高质量、响 应迅速的用户体验,并且具有良好的开发人员和平台
支持,但它们非常难于部署和维护。随着应用程序和客户端平台的复杂性不断增加,以可靠
且安全的方式将应用 程序部署到客户计算机的难度也将不断增加。如果部署了不兼容的共
享组件或软件库,则一个应用程序可以很容易地破坏另一个应用程序,这种现象称为
应用程
序脆弱性
。新版本的应用程序通常通过重新部署整个应用程序来提供,这可能使应用程序脆
弱性问题变得更加严重。
瘦客户端应用程序
Internet 提供了传统胖客户端模型的替代模型,它解决了许多与应用程序部署和维护相关联
的问题。基于浏览器的瘦客户端应用程序是在中央 Web 服务器上部署和更新的;因此,它
们消除了将应用程序的任何部分显式部署到客户计算机并加以管理的必要性。
该 模型使各个公司可以非常高效地将它们的应用程序公开给规模庞大、多种多样的外部受
众。因为瘦客户端已被证明能够高效地解决一些部署和可管理性问题,所以它 们现在用于
向组织内的用户提供对许多业务线 (LOB) 应用程序的访问,以及向客户和合作伙伴提供对
面向外界的应用程序的访问。尽管事实上这两种用户的需要和期望通常是根本不同的,也是
如此。
瘦客户端应用程序具有一些缺点。浏览器必须总是具有网络连接。这意味着移动用户在断开
连接时将无法访问应用程序,因此当他们返回办公室时,必须重新输入数据。而且,常用的
应用程序功能(如拖放、撤消-重复以及上下文相关帮助)可能不可用,这可能降低应用程
序的可用性。
因 为应用程序的大部分逻辑和状态位于服务器上,所以瘦客户端会频繁地向服务器发回数
据和处理请求。浏览器必须等待响应到达,然后用户才能继续使用该应用程 序;因此,该
应用程序的响应速度通常要比胖客户端应用程序慢得多。该问题在低带宽或高延迟的情况下
被恶化了,并且产生的性能问题可能导致应用程序可用性和 用户效率大幅度下降。要求输
入大量数据以及/或者在多个窗口中频繁导航的 LOB 应用程序尤其会受到这一问题的影响。
剩余123页未读,继续阅读
资源评论
- 再见寒冰玉2013-04-17简单学习一下
- 幸运之人2014-02-27内容尚可,参考而已
- SunAdiya2012-11-26内容还行,可以值得一看,作为平时的一些参考!
badnewfish
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功