`
hej748
  • 浏览: 29080 次
  • 性别: Icon_minigender_2
  • 来自: 珠海
社区版块
存档分类
最新评论

我为什么鼓吹thick client

阅读更多

这个版面好像最流行是XMLHTTP,类似的技术早前也见识过一些。前段日子,moxie对我鼓吹他们的技术(有点类似XMLHTTP)开发如何高效。确实,他的公司开发效率挺高的,至少目前比我们效率高。前提:在前人丰厚的积累基础上。 如果给我足够的积累(人力物力因素),我绝对会比他们快。积累中......
     
  我们先来看看这种js+xml+http的优点:
   1、浏览器,0客户端安装,slim client.
   2、操作系统无关
   3、具有桌面应用程序的一些特征,注意,这里是一些。

  而thickClient的常有的一些问题
   1、安装,升级问题
   2、肥胖问题
   3、操作系统相关问题

  说实话,如果早是几年前我都认为thick Client真没有前途了。当然,现在恰好相反。

  让我们看看thick Client问题的解决方法
    1、安装升级: 我们拥有太多方法了,Java web start就是最好的办法。自动安装升级。

    2、肥胖问题:
       现在芯跳速度越来越让我们对普通的桌面程序效率不再担心;不会再有人给PC配置64兆内存了,因为难以买到;不会有人新配置的机器是window95无盘站或者6.4G硬盘(我的第一台电脑只有6。4G硬盘)。

   3、操作系统? 嗯?那你一定不会java。

   4、他拥有桌面应用程序所有优点(包括脱机工作),而避免了桌面应用程序最大的几个硬伤,安装/升级/连接限制。我甚至可以建立一个本地数据库。

   5、我们都是java程序员,用接口交流,用代码说话。我和你没有人为的沟壑。想调试任何时候任何人都可以调试。没有人特殊,不存在稀有人才。(这可能就是Robbin所提倡的技术平民化吧)

   6、Client照样可以IoC,可以AOP,可以ORM.

     7、传输方式有N多选择,最差的一种是用XML传输。效率.......

     8、差点忘了说了,不然留下话柄,需要JRE支持。确实,这点总是有点不爽,不过,这个东东好像可以0培训。(当然,还可以从这里骗点钱,卖光盘,不过不要让sun知道)。 如果客户确实要运行业务系统的话,这个代价值得。而且稳定,JS则难说了。

   让我们回头看看js+xml+http:

    1、浏览器相关,据我所知,*****多的实现和浏览器相关。很多都和IE绑定,可是Bill最让人信不过,或需明天为了将firebox挤出,就不知道做了什么。

    2、脱机,本地存储皆是不可能(如果可能就依赖操作系统了吧)。 而这对于一些信息系统来说这太重要了,实际上之前都是特殊问题特殊处理,所以有了p2p之类的。

    3、js程序员+html+java程序员,他们用xml对话。我们知道,甲告诉乙,乙告诉丙,丙告诉丁.......到了戊那儿原话大变样了。再追溯起来就麻烦了。

    4、培养一个Swing的高手代价和培养一个js高手的代价比。写个Swing控件和写个JS组件的代价比。

    5、XML编制/解析,浪费了我的CPU.考验客户的信心。

    6、安全,java总比js这种解释性语言强吧
  
不过,web也有其不可替代位置,对于系统的外部用户,这个thick Client还不是很现实的。



增加名词注解
   C/S 我不讲了
  
有了b/s结构后,随着应用的深入,浏览器这种request/response的方式比较不爽,刷新过于频繁,界面操作性不强,报表麻烦等等。有人又怀念c/s时代的丰富客户端(rich Client),但又希望拥有B/S(又一说是所谓的三层结构)的优点。
  后来发展出一些新的技术出来,当然,远程调用技术我就不详谈了。这里主要说客户端技术。 rich client客户端技术主要分流为thin client和thick client,只是有时候他们界限并不明显。

  thin client技术的主要以XUL,XAML为代表,也就是利用xml标签描述桌面应用程序的界面,但几乎所有的主要计算工作在服务端(我们叫他应用服务器)完成。这时候,客户端是纤细的,只需要支持XUL或者xaml这两种语言的浏览器。只不过,这界面用起来和c/s程序下的差别不大。 目前上述两种技术都很不完善,还不具备应用开发的大环境。

  thick Client则不同,客户端需要有自己一套程序在跑着,界面逻辑的计算量全部在客户端。就好像c/s程序一样,只是c/s连接的是数据库,thick client连接的是远程应用服务器。这种技术先是开发中用的已经比较多了,只是标准林立。

  类似httpxml这种框架不能分为其中一种类型,他利用了js做了一些rich client工作的技术,他的出现跟rich client本身技术成熟度不够有一定的原因,可以这么说,他是特殊时代的特殊产物。我个人认为,这种技术出生之时,就注定了离消亡不久矣。

  之所以有现在这样的结果,是因为Rich Client标准众多,门派林立,各家由各家的做法,没有形成一定的标准,而且本身又有些技术方面的缺陷或者难题。

  但2005年,第一届Rich client大会将在美国召开,我们期待能有所突破。

 

转自http://www.iteye.com/topic/10214

分享到:
评论

相关推荐

    Application Security Testing of Thick Client Applications

    厚客户端应用(Thick Client Applications)是指那些需要安装到本地计算机或移动设备上的应用程序。与传统的Web应用相比,这类应用可以充分利用设备的硬件资源,提供更丰富的用户体验。然而,这也意味着它们需要访问...

    THICK

    标题中的"THICK"可能指的是一个特定的字体风格或者一种设计元素,这在视觉传达,尤其是平面设计领域中是常见的。在IT行业中,字体扮演着至关重要的角色,它不仅用于传达信息,还对用户界面(UI)的美学和用户体验...

    instantclient_12_2(Linux版oracle客户端)

    总之,Oracle Instant Client 12.2为Linux用户提供了方便、高效的数据库连接解决方案,无论是开发、测试还是生产环境,都能通过它轻松地实现与Oracle数据库的通信。只需正确配置,就能充分发挥其在性能和兼容性上的...

    关于Smart Client的学习例子

    在IT行业中,Smart Client是一种应用程序开发模式,它旨在提供比传统的 Thick Client(胖客户端)或 Thin Client(瘦客户端)更为智能、自适应和高效的用户体验。Smart Client应用通常结合了本地计算能力和网络通信...

    through_thick_and_thin

    through_thick_and_thin

    DiPed Thick

    "DiPed Thick" 是一种特定的字体,它属于设计领域中的图形元素,广泛应用于各种数字媒体和印刷品中。字体是计算机中用于显示和打印文本的样式,它们决定了文字的形状、大小、粗细和间距等特性。在设计中,字体的选择...

    OracleClient-11gR2 Oracle客户端,包括windows和Linux

    Oracle Client是Oracle数据库的一种重要组件,它为开发者和管理员提供了与Oracle数据库进行交互的工具和接口。11gR2是Oracle Client的一个特定版本,代表第11代、第二次重大更新(Release 2)。这个压缩包包含了适用...

    FTKImager用户手册-英文原版

    标题中提到的“FTKImager用户手册-英文原版”,指出本文档是一本关于FTKImager的用户手册。FTKImager是一款由AccessData公司开发的取证工具,主要用于计算机取证、数字取证的场景。它能够帮助取证分析师以只读模式...

    硬件使用说明书

    《硬件使用说明书:深入解析THICK800A EDXRF光谱仪》 一、THICK800A EDXRF光谱仪概述 THICK800A是一款先进的能量色散X射线荧光(EDXRF)光谱仪,主要应用于材料成分分析,包括金属合金、矿物、陶瓷、塑料、电子...

    Enterprise “Thin” vs. Retail “Thick [教程].ppt

    总结来说,"Enterprise Thin"架构通过集中管理、无缝漫游和强大的位置服务,为企业无线网络提供了更高的安全性、可扩展性和管理效率。而"Retail Thick"架构则更适合那些需要独立控制和简单网络结构的场景。在选择...

    tadk.rar_changingfrz_thick3ai_typicalgpi_数学计算

    标题中的“tadk.rar_changingfrz_thick3ai_typicalgpi_数学计算”可能代表了这个压缩包文件的主要特点或功能模块。这里我们可以分解一下这些关键词: 1. "changingfrz":可能指的是界面元素或者程序状态的动态变换...

    Thick TiO2‑Based Top ETL on Perovskite-Perovskite solar Cells

    Thick TiO2‑Based Top Electron Transport Layer on Perovskite for Highly Efficient and Stable Solar Cells

    windows64_11gR2_客户端.rar

    4. **Instant Client**:Oracle Instant Client是一个轻量级的客户端组件,包含基本的连接和查询功能,无需完整安装Oracle客户端。它可能包含在"windows64_11gR2_客户端.rar"中,适用于那些只需要连接Oracle数据库但...

    oracle12-client-basic-windows.x64-12.2.0.1.0.rar

    3. **Oracle Database Client Libraries**:这些库文件(如oci.dll、libclntsh.dll等)是Oracle客户端的核心,它们为应用程序提供与数据库交互的接口。这些库支持多种编程语言,如PL/SQL、Java、C++等。 4. **SQL*...

    元胞自动机实现.zip_thick3hq_元胞_元胞机_城市_城市规划

    在"元胞自动机实现.zip_thick3hq"中,"thick3hq"可能是指一种特定的元胞自动机规则或算法,但具体细节没有给出。通常,元胞自动机的规则可以非常简单,如著名的“生命游戏”(Conway's Game of Life),也可以非常...

    ZLib for Ada thick binding.-开源

    ZLib for Ada厚绑定是一个专为Ada编程语言设计的开源项目,它使Ada开发者能够方便地利用ZLib库进行数据压缩和解压缩操作。ZLib是一个广泛使用的C库,主要功能是实现GZIP和DEFLATE算法,这些算法在文件压缩、网络传输...

    Learning-based lensless imaging through optically thick scattering media

    The problem of imaging through thick scattering media is encountered in many disciplines of science, ranging from mesoscopic physics to astronomy. Photons become diffusive after propagating through a ...

    论文研究-Simulations and Analysis of the Moving Mask UV Lithography for Thick-photoresist.pdf

    本研究论文题目为《论文研究-Simulations and Analysis of the Moving Mask UV Lithography for Thick-photoresist.pdf》,作者为余倩、周再发,研究内容涉及厚胶移动掩膜UV光刻技术的模拟与分析,对移动掩膜曝光...

    Thick Translator-crx插件

    总结,Thick Translator-crx插件是一款实用的语言工具,专为提高阅读和理解网页上的粗体文字而设计。通过其独特的翻译功能和视觉强调,它极大地便利了用户的在线浏览体验,尤其对于语言学习者和跨文化交流者来说,...

Global site tag (gtag.js) - Google Analytics