zoukankan      html  css  js  c++  java
  • 转:Smart Client的学习体会

        什么是Smart Client?
        Smart Client 即 “智能客户端”.从技术上说Smart Client并不是一种新的技术,而是将许多概念,设计方法和技术进行了融合,吸取了传统B/S(瘦客户端)的易于版本控制和更新以及C/S(胖客户端)用户界面强大,使用客户机资源的特点. 在服务器端可以用WebService,在客户端可以用WinForm.

        Smart Client的优点
        易于升级
        这和B/S构架比较类似,只要在服务器上更新软件,再进行简单的配置,客户端就可以自动进行软件的更新.比如在服务器上建立一个站点,客户端通过HTTP方式进行更新.

        用户界面强大
        可以把Client理解成与网络交互数据的WinForm程序,因此几乎可以使用WinForm上的各种控件和资源,突破B/S浏览器表现能力的限制,如通过WEB实现某些功能可能必须通过ActiveX或Applet.

        易于整合客户端本地资源
        可以充分使用客户端的计算能力,很方便的整合的客户端的软件和硬件资源.

        允许离线工作
        不用像B/S一样,要与网络实时的连接,数据交换要反复的刷新页面. Smart Client允许用户将数据下载后进行离线的数据更改,当用户重新Online,程序自动向服务器提交新数据进行更新.

        开发Smart Client所需要解决的问题

        自动升级
        可以用VS.NET 2005 Beta2 中提供的ClickOnce技术,非常Easy!这个功能应该是CLR 和 .NET Framework 中的新功能.(ClickOnce的说明http://www.microsoft.com/china/msdn/archives/library/dnwinforms/html/ClickOnce.asp#clickonce_topic2).对这个技术还有一些不是很清楚的地方,主要是界面的定制,比如说一开始”正在启动就用程序”的窗体和发现新版本时提示升级的 窗体.

        离线工作时的数据处理
        这里主要解决在线时如何将数据保存在客户端.对于少量数据可以用XML保存,大量的数据可以用Access, MSDE.这样用户离线时就可以对数据进行读取和更改,待再次上线时程序判断哪些数据已经更改,然后将更改后的数据向服务器提交.

        数据冲突
        这个问题个人认为在一般的B/S系统中也存在,不过好像概率比较低,很多时候我们都不进行处理. 在Smart Client里离线的用户再次上线时将用户离线后更改的数据向服务器提交,这时非常有可能会出现数据冲突问题,因为用户可能离线非常长的时间. 所以有可能要进行数据冲突的处理.

         数据安全

  • 相关阅读:
    [Clr via C#读书笔记]Cp18 定制Attribute
    [Clr via C#读书笔记]Cp16数组
    [Clr via C#读书笔记]Cp17委托
    [Clr via C#读书笔记]Cp15枚举和位标识
    [Clr via C#读书笔记]Cp14字符字符串和文本处理
    [Clr via C#读书笔记]Cp13接口
    [Clr via C#读书笔记]Cp12泛型
    [Clr via C#读书笔记]Cp11事件
    [Clr via C#读书笔记]Cp10属性
    【程序员面试金典】面试题 02.06. 回文链表
  • 原文地址:https://www.cnblogs.com/summer/p/250924.html
Copyright © 2011-2022 走看看