搜狐首页-新闻-体育-娱乐-财经-IT-汽车-房产-家居-女人-TV-ChinaRen-邮件-博客-BBS-搜狗 

数码天下 > 软件·安全·信息化 > 信息化 > 技术·应用
驳“AJAX的七宗罪”
时间:2006年02月05日22:47 我来说两句  

 

来源:Java视线,作者dlee 

我不带任何主观色彩来评一下这个所谓的 “AJAX 的七宗罪”。

1、连带着 Flash 和 Ajax 一块骂了。

引用:没有链接的web就像森林中迷路的羔羊,这句看似广告语,其实是web设计的根本原则。

这句“原则”至少我并不知道,因此看起来不过就是一句广告语而已。我的原则是 Web 应用首先需要对于最终用户友好,然后才需要考虑对于搜索引擎友好。你使用 HTML FORM 提交的数据也是没有链接的,这些数据可以被搜索引擎搜索到吗?换句话说,可以添加在链接 URL 中的只有通过 GET 方法发送的请求。搜索引擎难道连使用 POST 方法提交的 FORM 数据都能搜索到吗?如果搜索引擎能搜索到这些数据,搜索引擎搜索到同样通过 HTTP 协议以明文形式发送的 XML 数据难道是很困难的事情吗?

必须要考虑对于搜索引擎友好的应用也是有限的。你以为 Google 真的没有办法解决这些问题吗?太小看 Google 了吧?

2、这个作者显然很少做 JavaScirpt 开发,以至于说出这样没有调查的话来:

引用:更可怕的是在javascript中竟然没有一款顺手的Debug软件,很多写js的老手到今天还是用最原始的alert("")来调试,splinetech JavaScript HTML Debugger 算是一个看起来还像个样子的调试器吧,可惜不是免费的,几十大刀让我这种穷人只能望而生叹了。

M$ Visual InterDev、Office 2003 中带的 Script Debugger 都是非常好用的调试工具。如果不愿意花钱买这些工具,还可以使用 Mozilla 开发的 Venkman,调试功能已经非常完善了。说 JS 没有很好的 IDE 是实情,说 JS 没有很好的调试工具简直是天大的笑话。

3、

引用:和上面说的差不多,层层包含js文件是AJAX的通病,再加上以往的很多服务端代码现在放到了客户端,所以每次打开一个页面会包含很多的无用的js文件也一同下载下来。虽然宽带越来越普及,但是减少代码冗余还是每个web设计者的必修课。

完全是没有调查的胡说,如果通过不同的文件对于 JS 代码进行了认真的组织,将 JS 函数分到很多小文件中,一个页面仅仅只需要加载它自己使用到的 JS 文件,何来冗余代码之说?

4、 引用:什么叫破坏web标准?<span onclick="location.href="/detail/";">点击查看全部</a>,这就是破坏了web标准。好好的A标签放着不用,偏要用span。这种例子很多,flickr中的标题单击后可以更改,这虽然(也包括我)是大家一致叫好觉得方便的设计,但同时这也是歧义了 web元素本身的含义,物是人非这个词不知道用的合不合适?

这仅仅是一个具体应用中的用法,居然也归到了 Ajax 头上,真是欲加之罪,何患无词。这里如果简单地将 span 换成 a 难道不是很容易的事情吗?如果使用 a 就不能使用 onclick 了吗?按照作者的想法,似乎所有的 a 都应该只能是简单链接,不能加上 onclick,加上 onclick 就变成了 Ajax,就触犯了天条,破坏了 Web 标准。况且给 span 加上一个 onclick 居然就上纲上线到破坏 Web 标准的层次,我研究 Web 标准这么多年,也没有看出究竟破坏了哪一款哪一条的 Web 标准。Web 标准中什么地方规定只允许使用 a,不允许使用 span 来实现了?况且在最新的 XHTML 1.2 标准中,a 已经变成了一个不推荐使用的标记。什么是 Web 标准,什么是破坏 Web 标准?回去翻翻书吧。 

5、

引用:浏览器和浏览器之间的差异一直都是web设计者心中永远的痛,支持的css不一样,支持的客户端脚本不一样,有的竟然连客户端脚本的用法都有不同。这让程序员非常苦恼,最明显的就是调用xmlhttprequest了,req=(window.XMLHttpRequest)?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");这段创建xmlhttp对象的代码就是为了适应IE和非IE两天阵营的浏览器的经典例子。说是没有back和没有history的浏览器,这也是一个讽刺,主要是指在AJAX下点击链接是不Redirect页面,所以不存在后退和前进了,同样,没有后退和前进也就无存找浏览历史纪录了。back和history存在的根本就是url的改变,在AJAX下人们发现不改url也同样能达到内容改变这个酷酷的特点,何乐而不为呢?

我提到过多次《网站重构》,这本书要解决什么问题?femto 开始读了吗?曾经产生过读这本书的欲望吗?

创建 XMLHTTP 对象的不同语法只是一个非常小的问题,这是在 XMLHTTP 没有被完全标准化之前的暂时问题。现在基于 Web 标准做开发,必须要写针对不同浏览器的代码片断的场合已经非常少了,封装这些差异的 JS 库网上也已经有很多了。

无法利用 back/history 的问题在 Google Maps 中是使用 IFrame 来解决的,这个问题我在 BEA User Group 的演讲中已经说过了。

6

引用:xml有一个致命的缺点,那就是加载的资源耗费,这好像是所有平台下xml的通病。google map虽然是Jesse James Garrett推荐的AJAX的品牌代言人,但是gmap并没有用xml,而是用了原生的javascript数组,我自己在用AJAX从服务端传回数据时也从来不用 XML,因为它让我更繁琐让系统更慢。服务端首先要调用xml对要传输的数据进行封装,客户端得到数据后再调用xml进行解析,简直是画蛇添足。

致命吗?我做了这么多浏览器端的 XML 开发,为什么至今没有感受到?Google Maps 服务器端传给客户端的数据就是不折不扣的 XML,其它的开发人员还可以对这个 XML 进行定制加入自己的数据。Google Maps 还在客户端几个功能上使用了 XSLT。说 Google Maps 没有使用 XML,要不要我把我亲自整理过的 Google Maps 客户端的代码发给你你才能闭嘴?

7、

引用:AJAX适用于什么?能干什么?能带来什么?在网站上用AJAX那是笑话,除非像Google Map和Flickr这样的专业领域的网站外,普通网站根本没必要用这个技术;在庞大的企业应用市场估计还能有AJAX的一点容身之地,不过在MS、 SUN不会看着AJAX这个野孩子来在他们的地盘上撒泼的,如果大家都用AJAX,那java给谁卖?.net给谁卖?所以AJAX在企业应用也不是长久之地。所以,AJAX现在找不到自己合适的位置是个很大的尴尬。疑病乱投医,最近把AJAX的矛头指向Flash和Applet就是一个例子。

又是一番奇谈怪论。说大公司不会使用 Ajax 完全是主观臆测。事实上,大量使用客户端 JS 的大公司包括以下这些:

Macromedia:在 Dreamweaver 产品中包括了大量的 JS 代码。

Oracle:很多产品都使用了 JS,目前对于 Ajax 很感兴趣。这个消息是我在深圳 Oracle 做开发的一个朋友亲口告诉我的。

SAP:早在很多年以前,SAP 就在其产品中大量使用了 JS+XMLHTTP 的技术,仅仅是 SAP 没有炒做这个概念而已。说 Ajax 不适合企业应用,SAP 是靠做什么吃饭的?

Google:我已经不需要再说什么了。

(责任编辑:韩建光)


我来说两句 全部跟贴 精华区 辩论区

用户:  匿名发表:  隐藏地址:
*用搜狗拼音输入法发帖子,体验更流畅的中文输入>>

设为辩论话题      


精彩图片新闻


激情四溢沙滩宝贝


数码公社专栏

相关链接





搜狐短信 小灵通 性感丽人 言语传情
三星图铃专区
[周杰伦] 千里之外
[誓 言] 求佛
[王力宏] 大城小爱
[王心凌] 花的嫁纱
精品专题推荐
短信企业通秀百变功能
浪漫情怀一起漫步音乐
同城约会今夜告别寂寞
敢来挑战你的球技吗?
 精彩生活 

星座运势 每日财运
花边新闻 魔鬼辞典
情感测试 生活笑话


今日运程如何?财运、事业运、桃花运,给你详细道来!!!





菊花台
迷迭香
青青河边草
丁香花
原来你也在这里
爱如空气
不要再来伤害我

公社热图


·北美惊现若干神秘UFO/图
·范冰冰真空写真露点[图]
·传说中国内第一美女车模


频道精彩推荐

·俄客机坠毁170人遇难
·莫斯科市场爆炸事件
·重庆遭遇特大旱灾
·2008奥运会 NBA 科比 F1
·男篮世锦赛 姚明 王治郅
·美网公开赛 刘翔 篮球
·中网公开赛 体育彩票
·mpv suv 跑车 微型车
·一汽奔腾 2006广州车展
·九寨沟 国美收购永乐






不怕不怕
吉祥三宝
桃花朵朵开
千里之外
大城小爱
梁祝
迷糊娃娃可爱粉红卡通
四季美眉给你最想要的

news
搜狐分类 ·搜狐招商


创意就是这么简单
女星豪乳尺码大曝光
·现场抓拍明星着透视装
·芙蓉二代横空出世
·央视女主持辞职拍艳照
·徐若瑄15岁全裸写真曝光
·拍摄:娱乐圈性交易过程
·抓拍模特海滩宽衣解带
·外国女生流行拍的艺术照
·台湾十大波霸照片大比拼
·网络美女全裸人体摄影
·范冰冰终于还是脱了

推荐企业
2006年世界电信展 诺基亚 瑞星 联想 摩托罗拉 三星 清华紫光 金山 索尼爱立信 索尼
给编辑写信



设置首页 - 搜狗输入法 - 支付中心 - 搜狐招聘 - 广告服务 - 客服中心 - 联系方式 - 保护隐私权 - About SOHU - 公司介绍 - 全部新闻 - 全部博文
Copyright © 2018 Sohu.com Inc. All Rights Reserved. 搜狐公司 版权所有
搜狐不良信息举报邮箱:jubao@contact.sohu.com