现在的位置: 首页 > 综合 > 正文

ZK框架:Ajax开发实战

2013年02月19日 ⁄ 综合 ⁄ 共 1856字 ⁄ 字号 评论关闭

经过近十年来的发展,Web应用从静态HTML页面,发展到动态HTML(DHTML)页面,后来又有了applets和Flash,最终,Ajax技术得以产生(AsynchronouscJavaScriptcandcXML).由于GooglecMaps和Suggest的成功应用,Ajax在Web应用开发中获得了重视,究其原因在于它提供了与桌面应用同一层次的用户互动和响应体验.与applets和Flash不同,AJax是基于标准浏览器和JavaScript的,它不需要浏览器加载附加的插件. 
      Ajax是新一代的DHTML.与DHTML类似,它在很大程度上依赖JavaScript来捕获用户活动产生的事件,然后将页面(通过DOM)在浏览器中动态地展现出来给用户.而且更进一步地是,2客户端以一种异步的方式与服务器通信,所获取的页面不需要整个的进行渲染或更新.通过在客户端和服务器中引入这种轻量级的通信机制,Ajax解决了原有的基于页面的模式的弊端.只要设计得当,Ajax可以给Web应用带来与桌面应用同样丰富的组件,而且所有这些组件的内容在应用程序的控制下可以得到动态的更新. 
      通过提供用户需要的互动体验,Ajax使得本来就已经耗时耗力的Web应用开发更加困难,程序员需要解决的问题更为复杂,所需的技能也更多.开发人员不得不在浏览器中操作DOM,同时使用与服务器不兼容的甚至是很容易产生Bug的JavaScriptcAPI来通信.为了获得更好的用户体验,程序员常常需要在浏览器中保存应用数据的部分拷贝内容以及部分业务逻辑.这无疑增加了系统维护的成本,同时在客户端和服务器端保持数据的一致性也是一个挑战.
      问题在于,现有的Ajax应用与传统的Web应用在处理请求的方式上没有任何不同.开发人员仍然不得不自己去填平基于页面的模式和无状态模型与现代应用程序需求之间的鸿沟. 
      在Ajax技术推出以后,互联网上可以看到很多针对AJax的技术框架,比较优秀的有DWR.cDOJO等.相信广大开发人员也都比较熟悉这些框架了,但是当你看了ZK框架时,你会眼前一亮,5有一种豁然开朗的感觉.没错,ZK框架的思想是非常棒的.它的口号是WithoutcJavascnpt,是想将Ajax开发人员从繁琐的JavaScript语言中解脱出来.它同时也是基于事件驱动的组件,通过标记语言来设计组件,以简化开发人员的工作.它显著的特点是使用类似XUL的标记语言来定义组件.

      在第一次接触到ZK框架的时候,6我就感到无比兴奋.第一感觉是,这个框架太成功了.它将Windows桌面式开发模式引入到Ajax的Web应用中,让我感觉也许C/S和B/S模式在不久的将来可以慢慢形成一致,直到看不出什么区别.为此,我一直在ZK的官网上仔细浏览和学习,并将Demo下载到机器上进行研究.最近,我在公司的某个商业项目中成功运用该框架实现系统的部分通用组件,如ComboBox和BandBox等.并准备更深入地研究ZK框架,将其更多的思想运用在开发基于Ajax的应用中.因此,我向大家推荐这本书.

      本书是一本ZK框架的实战教程,它分为两个部分.第一部分是了解ZK框架,介绍了ZK框架的基础知识.ZK框架的部署.第一个ZK应用的实现和ZK的一些通用组件.第二部分是应用ZK框架,主要讲解ZK宠物商店应用的思想结构以及实现.这个应用在官网的Demo中可以看到演示效果并且官方网站提供了源代码的下载.我们可以下载后,一步步地跟着书中的指示来完成整个应用的实现.这是非常好的经历,尤其适合刚接触ZK框架或Ajax技术的朋友们.

      本文的英文版在ZK官网上已经做了推荐,相信是一本非常好的书.我向博文视点力荐此书后,很快得到了肯定的答复,在这里,我想感谢博文视点的周筠老帅,感谢您对此书的欣赏和对我的信任.同时也要感谢晓菲编辑和赵士威编辑,感谢你们在翻译过程中给予的配合和帮助.最后,我想感谢我亲爱的老婆印印,感谢你在这样的炎炎夏日,支持我这种枯燥乏味的翻译工作,是你的支持和鼓励,才让我更快地顺利完成这次翻译任务.

      本人是做开发出身的,在语言组织和润色方面如果有不是很恰当的地方,还请读者朋友们海涵和理解.我是站在开发人员的角度来翻译此书的,对于翻译质量,也希望大家可以多提出宝贵意见,以待下次修订时进行改进.

      最后,祝各位读者阅读愉快,事业有成! 

     蔡毅

     2008年8月于武汉...

抱歉!评论已关闭.