智能客户端的研究与应用
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着互联网的高速发展,基于B/S架构的应用程序被广泛开发。但是,随着应用需求的不断扩展,应用程序的复杂性日增,以及终端设备多样化,传统Web应用程序逐渐跟不上步伐,2004年微软提出了智能客户端(Smart Client)的概念。智能客户端代表了一种全新的开发模式,它同时具有C/S架构的丰富用户体验和B/S架构的简单部署及容易维护的优点,它既有Windows程序的强大用户界面,又可以享受Web应用升级和更新的便捷。
     本论文首先阐述了智能客户端的发展历程、定义和基本原理,并且回顾了B/S架构、C/S架构以及智能客户端的优点和缺点。其中着重探讨了智能客户端的代表特征:利用本地资源、利用网络资源、支持偶尔连接的用户、智能部署和更新。
     其次,论文讨论了智能客户端的体系结构和涉及的相关技术。其中包括:使用Windows窗体技术构建用户界面、建立连接、数据处理、偶尔连接、安全性、部署和更新等方面的内容。
     最后,给出了一个完整的智能客户端的设计实例(BookingSystem机票预定系统)。该实例是一个以Composite UI Application Block构建的组合型智能客户端应用程序。它围绕机票预定系统建立,实现了航班查询、机票预定、报表查询、权限管理等基本功能。在设计上,主要关注于智能客户端的体系结构的实现和相关技术的应用,而不是业务逻辑的实现。在体系结构的研究中,详细分析了Composite UI Application Block构建组合型智能客户端的设计、偶尔连接情况下的数据访问无缝切换的设计、后台自动同步客户端和服务器数据并处理数据冲突设计、Web服务作为中间层实现商务逻辑和数据访问的设计,并给出了基本的解决方案。在部署和更新上,采用了Visual Studio 2005新增的ClickOnce技术,使得开发人员花费的精力更少,并为最终用户提供了更好的安装和更新体验。
     本论文对智能客户端技术做了前瞻性的研究和有益的尝试,通过具体的实例来掌握智能客户端技术在企业级应用程序中的应用,对今后的程序设计和开发工作起到了推动作用。
Nowadays, with the high-speed development of internet, the applications basing on browser/server architecture were developed increasingly. But with the growing requirement, the increasing complexity, and the diversification of terminal devices, the traditional web applications can not keep up with step. So, Microsoft Company put forward a new concept - smart client in 2004. The smart client applications stand for a bran-new developing pattern. Rich user experience of client/server architecture, simple deployment and easy maintenance of browser/server architecture are the chief advantage of smart client applications. They not only have powerful user interface of windows applications, but also enjoy the convenience of installation and update of Web applications.
     This thesis firstly discusses the course, definition and basic principle of smart clients and looks back the advantages and disadvantages of browser/server architecture, client/server architecture and smart clients. Then, it strongly discusses the distinct characteristic of the smart clients: make use of local resources, make use of network resources, support occasionally connected users and provide intelligent installation and update.
     Secondly, the thesis study smart client architecture and correlative technique, including developing user interface by windows form technique, establishing connect, handling data, occasionally connect, security, deploying and updating smart client applications. Finally, the thesis provides an integrated smart client instance -Bookingysystem application. The instance is a composite smart client application using Composite UI Application Block. It bases on airplane tickets booking system and implements many functions, such as querying flight, booking tickets, reporting, authentication and authorization management. In design layer, it more concerns the implement of smart client architecture than business logic. It gives the basic solution and search deeply in the design of composite smart client by Composite UI Application Block, switching data access pattern fluently in occasionally connect, synchronizing data automatically in background thread between client and server. In the installation and update, it uses the new technique - ClickOnce that firstly appears in Visual Studio 2005, expends developers much less energy and provide with more convenient user experience.
     On the whole, the thesis study the usage in enterprise application by concretely sample and make a far-sighted attempt. These works will impulse our programming and developing in the years coming later.
引文
[1] (美)伯克斯.(美)赛欧司著,张晓坤译,.NET本质论第1卷:公共语言运行库[M].北京:中国电力出版社,2004-1
    [2] (美)里克特 著,李建忠 译,.NET框架程序设计(修订版) 北京:清华大学出版社,2003-11-1
    [3] 邹建峰.周山峰.项细威.C#企业开发案例精解[M].北京:人民邮电出版社,2006-1
    [4] 曹严明,组合型智能客户端应用[R],微软技术大会 Tech.Ed2005,2005
    [5] 王为,使用Clickonce部署客户端应用[R],微软技术大会 Tech.Ed2005,2005
    [6] 许建志.企业整合新天地-Web Service专栏:新型态的应用程序架构[EB/OL].http://www.microsoft.com/taiwan/msdn/columns/web_service/webservice7. htm, 2004-11
    [7] 王林.RIA技术概览[J].程序员,2005,2:64—66.
    [8] 刘宜兰.Smart Client 路在前方[J].程序员,2005,2:81-83.
    [9] Microsoft公司.IssueVision智能客户端应用程序示例[CP/OL].http://www.windowsforms.net/Applications/application.aspx?PageID=40&tabindex=8, 2004
    [10] David Hill.Brenton Webster.Edward等.智能客户端体系结构与设计指南[M/OL]. http://www.microsoft.com/china/msdn/library/architecture/architecture/architecturetopic/SCArchDeGuide/cover.mspx?mfr=true, 2004-8-20
    [11] Microsoft公司.MSDN技术资源库[DB/OL].http://msdn2.microsoft.com/zh-cn/library/default.aspx, 2006
    [12] Microsoft公司.Microsoft企业开发策略汇编[EB/OL].http://www.microsoft.com/china/msdn/Library/WhitePaperSolution/WPBCSiFSfinal.mspx, 2005-4
    [13] Microsoft公司.C#语言和.NET Framework介绍[EB/OL].http://msdn2.microsoft.com/zh-cn/library/zlzx9t92(VS.80).aspx
    [14] Microsoft公司.Visual C# 2005中的新增功能[EB/OL].http://msdn2.microsoft.com/zh-cn/library/t27ahy37(VS.80).aspx
    [15] Microsoft公司.如何:创建响应事件的控件(C#编程指南)[EB/OL].http://msdn2.microsoft.com/zh-cn/library/hy3sefw3(VS.80).aspx
    [16] Microsoft公司..NET Compact Framework版本的变体[EB/OL].http://msdn2.microsoft.com/zh-cn/library/ms228799(VS.80).aspx
    [17] Microsoft公司.基于Windows的应用程序概述[EB/OL].http://msdn2.microsoft.com/zh-cn/library/5b13a7k4(VS.80).aspx
    [18] Microsoft公司.Windows窗体概述[EB/OL].http://msdn2.microsoft.com/zh-cn/library/8bxxy49h.aspx
    [19] Microsoft公司.使用.NET Framework开发自定义Windows窗体控件[EB/OL].http://msdn2.microsoft.com/zh-cn/library/6hws6h2t.aspx
    [20] Microsoft公司.在Windows窗体和Web窗体之间作出抉择[EB/OL]. http://msdn2.microsoft.com/zh-cn/library/5t6z562c.aspx
    [21] Microsoft公司.了解.NET中的企业服务(COM+)[EB/OL].http://www.microsoft.com/china/MSDN/library/archives/library/dndotnet/html/entserv.asp
    [22] Microsoft公司.在.NET中使用COM+服务[EB/OL].http://www.microsoft.com/china/MSDN/library/archives/library/dndotnet/html/COMservnet.asp
    [23] Microsoft公司.Microsoft.NET Remoting:技术概述[EB/OL].http://www.microsoft.com/china/MSDN/library/archives/MSDNonline/features/articles/hawkremoting.asp
    [24] Microsoft公司.Web服务和Microsoft平台[EB/OL].http://www.microsoft.com/china/MSDN/library/WebServices/WebServices/wsmsplatform.mspx
    [25] Microsoft公司..NET Framework部署功能[EB/OL].http://msdn2.microsoft.com/zh-cn/library/410zh1ty(VS.80).aspx
    [26] Microsoft公司..NET Framework部署基础[EB/OL].http://msdn2.microsoft.com/zh-cn/library/y18k4htb(VS.80).aspx
    [27] Microsoft公司.选择部署策略[EB/OL].http://msdn2.microsoft.com/zh-cn/library/e2444w33.aspx
    [28] Microsoft公司.ClickOnce部署概述[EB/OL].http://msdn2.microsoft.com/zh-cn/library/142dbbz4.aspx
    [29] Microsoft公司.序列化概念[EB/OL].http://msdn2.microsoft.com/zh-cn/library/39x7ad2x(VS.80).aspx
    [30] Microsoft公司.基本序列化[EB/OL].http://msdn2.microsoft.com/zh-cn/library/4abbf6k0(VS. 80) aspx
    [31] Microsoft公司.自定义序列化[EB/OL].http://msdn2.microsoft.com/zh-cn/library/ty01x675 (VS. 80) aspx
    [32] Microsoft公司.XML和SOAP序列化[EB/OL].http://msdn2.microsoft.com/zh-cn/library/90c86ass(VS. 80) aspx
    [33] Microsoft公司.如何:将对象序列化[EB/OL].http://msdn2.microsoft.com/zh-cn/library/szzyf24s(VS. 80) aspx
    [34] Microsoft公司.如何:将对象反序列化[EB/OL].http://msdn2.microsoft.com/zh-cn/library/fa420a9y(VS. 80) aspx
    [35] Microsoft公司.XML Web服务的XML序列化[EB/OL].http://msdn2.microsoft.com/zh-cn/library/564kSys4 (VS. 80) aspx
    [36] Microsoft公司.线程与线程处理[EB/OL].http://msdn2.microsoft.com/zh-cn/library/6kac2kdh(VS. 80) aspx
    [37] Microsoft公司.为多线程处理同步数据[EB/OL].http://msdn2.microsoft.com/zh-cn/library/z8chs7ft(VS. 80) aspx
    [38] Microsoft公司.前台和后台线程[EB/OL].http://msdn2.microsoft.com/zh-cn/library/h339syd0(VS. 80) aspx
    [39] Microsoft公司.服务组件概述[EB/OL].http://msdn2.microsoft.com/zh-cn/library/7c05y13x(VS. 80) aspx
    [40] Microsoft公司.服务组件编程指南[EB/OL].http://msdn2.microsoft.com/zh-cn/library/89dfyh7c (VS. 80) aspx
    [41] Microsoft公司.可用的COM+服务摘要[EB/OL].http://msdn2.microsoft.com/zh-cn/library/k702bSfx(VS. 80) aspx
    [42] Microsoft公司.自动事务和.NET Framework类[EB/OL].http://msdn2.microsoft.com/zh-cn/library/kybe8738(VS. 80) aspx
    [43] Microsoft公司.自动事务和XML Web服务[EB/OL].http://msdn2.microsoft.com/zh-cn/library/b9t31813 (VS. 80) aspx
    [44] Microsoft公司.松耦合事件[EB/OL].http://msdn2.microsoft.com/zh-cn/library/0czwd3tx(VS. 80) aspx
    [45] Microsoft公司..NET Framework中的XML设计目标[EB/OL].http://msdn2.microsoft.com/zh-cn/library/5w1xh124(VS. 80) aspx
    [46] Microsoft公司..NET Framework中的XML结构摘要[EB/OL].http://msdn2.microsoft.com/zh-cn/library/4x4kfk8w(VS. 80) aspx
    [47] Microsoft公司.在内存中处理XML数据[EB/OL].http://msdn2.microsoft.com/zh-cn/library/20esef39 (VS. 80) aspx
    [48] Microsoft公司. Smart Client - Composite UI Application Block[EB/OL].http://msdn.microsoft.com/practices/apptype/smartclient/default, as px?pull=/library/en-us/dnpag2/html/cab.asp
    [49] Microsoft公司. Getting Started with the Smart Client Software Factory [EB/OL].http://msdn2.microsoft.com/en-us/library/aa480481.aspx
    [50] Microsoft公司. Overview of the Composite UI Application Block[EB/OL]. http://msdn2.microsoft.com/en-us/library/aa546409.aspx
    [51] Microsoft公司.SQL Server 2005 联机丛书 [EB/OL].http://msdn2.microsoft.com/zh-cn/library/ms130214.aspx

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700