大丰收高手论坛一肖中特免费公开

贵阳网站建设

,贵阳做网站就选择蓝心网,专注贵阳网站建设14年,不限?#38382;?#20813;费维护,丰富的建站经验,值得信赖。
销售热线 0851-86501438  13312239849
有事请联系我们
贵阳网站建设
您现在的位置:首页 > 网站知识 > 开发Ajax应用面临的问题及解决方案

开发Ajax应用面临的问题及解决方案

发布时间:2014-05-15  次  做网站请找“贵阳网站建设(蓝心网)”

对程序员而言,开发Ajax应用最头痛的问题莫过于以下几点:

浏览器的兼容性问题

Ajax在本质上是一个浏览器端的技术,首先面临无可避免的第一个问题即是浏览器的兼容性问题。

各家浏览器对于JavaScript/DOM/CSS的支持总有部分不太相同或是有Bug,甚至同一浏览器的各个版

本间对于JavaScript/DOM/CSS的支持也有可能部分不一样。这导致程序员在写Ajax应用时花大部分的

时间在调试浏览器的兼容性而非在应用

程序本身。因此,目前大部分的Ajax链接库或开发框架大多以js链接库的?#38382;?#23384;在,以定义更高阶的

JavaScript API 、JavaScript对象(模板)、或者JavaScript Widgets来解决此问题。如prototype.js。

业务逻辑分散

Ajax技术之主要目的在于局部交换客户端及服务器之间的数据。如同传?#25345;?#20027;从架构,无可避免的

会有部分的业务逻辑会实现在客户端,或部分在客户端部分在服务器。由于业务逻辑可能分散在客户端

及服务器,且以不同之程序语言实现,

这导致Ajax应用程序极难维护。如有用户接口或业务逻辑之更动需求,再加上前一个JavaScript/DOM/CSS

之兼容性问题,Ajax应用往往变成程序员的梦魇。针对业务逻辑分散的问题,Ajax开发框架大致可分为两类:

将业务逻辑及表现层放在浏览器,数据层放在服务器:因为所有的程序以JavaScript执行在客户端,

只有需要数据时才向服务器要求服务,此法又称为胖客户端(fat client)架构。服务器在此架构下通常仅

用于提供及储存数据。此法的好处在于程序员可以充分利用JavaScript搭配业务逻辑来做出特殊的用户

接口,以符?#29616;?#31471;用户的要求。但是问题也不少,主因在

第一,JavaScript语?#21592;?#36523;之能力可能不足以处理复杂的业务逻辑。

第二,JavaScript的执行效能一向不好。

第三,JavaScript访问服务器数据,仍需?#23454;?#30340;服务器端程序之配合。第?#27169;?#27983;览器兼容性的问题又出现。

有些Ajax开发框架如DWR企图以自动生成JavaScript之方式来避免兼容的问题,并开立通道使得JavaScript

可以直接调用服务器端的Java程序来简化数据的访问。但是前述第一及第二两个问题仍然存在,程序员必须

费相当的力气才能达到应用程序之规格要求,或可能根本无法达到要求。

将表现层[2]、业务逻辑、及数据层放在服务器,浏览器仅有用户接口引擎(User Interface engine);

此法又称为瘦客户端(thin client)架构,或中心服务器(server-centric)架构。浏览器的用户接口引擎

仅用于?#20174;?#26381;务器的表现层以及传达用户的输入回到服务器的表现层。由浏览器所触发之事件亦送回服务器

处理,根据业务逻辑来更新表现层,然后?#20174;?#22238;浏览器。因为所有应用程序完全在服务器执行,

数据及表现层皆可直接访问,程序员只需使用服务器端相对较成熟之程序语言(如Java语言)即可,不需再学

习JavaScript/DOM/CSS,在开发

应用程序时相对容易。缺点在于用户接口引擎以及表现层通常?#21592;?#20934;组件的?#38382;?#23384;在,如需要特殊组件

(用户接口)时,往往须待原框架之开

发者提供,缓不济急。如开源码Ajax开发框架ZK目前支持XUL及XHTML组件,尚无XAML之支持。

多进程或多线程的竞争问题

Ajax是以异步的方式向服务器提交需求。对服务器而言,其与传统的提交窗体需求并无不同,而且

由于是以异步之方式提交,如果同时有多个Ajax需求及窗体提交需求,将无法保证哪一个需求先获得服务

器的响应。这会造成应用程序典型的

多进程(process)或多线程(thread)的竞争(racing)问题。程序员因此必须自?#20889;?#29702;或在JavaScript

里面动手脚?#21592;?#20813;这类竞争问题的发

生(如Ajax需求未响应之前,先disable?#32479;?#25353;钮),这又不必要的增加了程序员的负担。目前已知有自动

处理此问题之开发框架似乎只有ZK。



本文URL:http://www.ctldn.tw/wzzsshow/133.html
下一篇:数据安全的含义
贵阳网站制作 经验丰富的程序员
多年的贵阳网站建设开发经验,能熟练用ASP.NET(C#)技术开发小、中、大型网站的程序。

贵阳网站设计 优秀的平面设计师和动画设计师
贵阳网站设计,专业的配色,及具时代气息和行业特色的创意,满足不同欣赏需求的各类客户群体。

贵阳做网站 物美价廉的网站建设服务
我们能缩减大部份成本,?#28909;?#38144;售人员的提成、工?#23454;?#24320;销,所以我们的贵阳网站建设在同等网站质量下价格上能降到很低。

贵阳网站维护 不限?#38382;?#20813;费维护
在此服务期间,网站出任何问题或者需要调整的,我们及时处理。以后每年需要维护,维护费用也是很低的。

贵阳网站改版 专业网站优化服务
我们有多年的网站优化、网站推广经验,能使客户网站在几大搜索引擎均搜得到,而且自然排名靠前。
贵阳网站建设公司
版权所有:贵阳网站建设(蓝心网)(www.ctldn.tw)  网站地图

地址:贵阳市花果园半山小镇X8栋2单元902号  咨询及服务热线:0851-86501438  13312239849    QQ:915412310  电子邮件:[email protected]

网站备案号:黔ICP备10001311号-1  贵公网安备 52010302000639号

大丰收高手论坛一肖中特免费公开 福建36选7开奖 河北麻将下载电脑 比利亚雷亚尔西甲 钻石列车送彩金 福彩走势图网易彩票 上海上港队长 巴塞罗那队服 湖北快3计划软件 阿拉维斯对巴利亚多利得 法国的斯特拉斯堡冬天的气温