本文已經(jīng)發(fā)表于InfoQ(http://www.infoq.com/cn/news/2007/07/dhh-debates-ria-future)
David Heinemeier Hansson(以下簡(jiǎn)稱DHH,Ruby on Rails作者)在最近的一篇Blog“如果我真的喜歡HTML、CSS和Javascript,那又怎么了?”(What if I actually like HTML, CSS, and JavaScript?)中闡述了他對(duì)RIA未來(lái)的一種看法。他認(rèn)為目前在三大Web標(biāo)準(zhǔn)規(guī)范下的HTML、CSS和Javascript是一套足夠強(qiáng)大的工具箱,這些技術(shù)提供給開(kāi)發(fā)人員的功能并沒(méi)有影響到Web應(yīng)用的發(fā)展,并且隨著像Firebug和其他優(yōu)秀Javascript庫(kù)的支持下,Web程序員的日常開(kāi)發(fā)工作已經(jīng)非常愜意了。DHH表示:
從用戶體驗(yàn)的角度來(lái)說(shuō),我們甚至還沒(méi)有發(fā)揮出HTML的全部潛力。
本篇Blog引起了眾多網(wǎng)友的評(píng)論,大部分人都認(rèn)同DHH的觀點(diǎn)。大部分開(kāi)發(fā)者認(rèn)為基于標(biāo)準(zhǔn)的Web開(kāi)發(fā)還大有潛力可挖,通過(guò)加強(qiáng)設(shè)計(jì)者與開(kāi)發(fā)者的聯(lián)系,產(chǎn)品的用戶體驗(yàn)可以得到很大的提升。目前大部分Web應(yīng)用還不能令人滿意,但是這個(gè)問(wèn)題并不完全歸咎于瀏覽器的非標(biāo)準(zhǔn)實(shí)現(xiàn),更多的是因?yàn)樵O(shè)計(jì)和開(kāi)發(fā)者本身對(duì)技術(shù)的掌握還不到位。DHH認(rèn)為不能假設(shè)用新的(基于插件的)RIA技術(shù)開(kāi)發(fā)出了非常令人驚奇的應(yīng)用,就認(rèn)為這些更“先進(jìn)”和“富”的技術(shù)會(huì)取代我們正在使用的HTML、CSS和Javascript等。相反,DHH認(rèn)為對(duì)這些技術(shù)的過(guò)度鼓吹都是廢話。但回復(fù)的網(wǎng)友中也有一些人認(rèn)為這是DHH對(duì)于RIA技術(shù)革命的不友好表現(xiàn),例如Flexible Rails的作者Peter Armstrong就認(rèn)為Flex結(jié)合Rails可以帶來(lái)更好的用戶體驗(yàn)。而后,DHH也很快出來(lái)澄清說(shuō)他只是向那些無(wú)視HTML、CSS和Javascript的技術(shù)狂熱者表示反對(duì),而Rails是非常歡迎其它RIA技術(shù)作為補(bǔ)充的。
在國(guó)內(nèi)技術(shù)社區(qū),Ajax方面的專家(Ajaxcn網(wǎng)站站長(zhǎng))李錕針對(duì)DHH的這篇博客也發(fā)起了討論。討論中李錕認(rèn)為基于標(biāo)準(zhǔn)的HTML、CSS和Javascript在RIA的未來(lái)發(fā)展中還將扮演主力的地位,引出許多針?shù)h相對(duì)的觀點(diǎn)討論。最后大家基本上一致認(rèn)為基于標(biāo)準(zhǔn)和模式進(jìn)行基于HTML、CSS和Javascript的開(kāi)發(fā)在目前還沒(méi)有成為技術(shù)瓶頸,這些技術(shù)在未來(lái)還有很多潛力。李錕很好地總結(jié)了開(kāi)發(fā)者目前面臨的問(wèn)題,現(xiàn)在看到了技術(shù)局限是因?yàn)閷?duì)它的了解,而其它新興RIA技術(shù)是否會(huì)成為主流還要等它們充分暴露問(wèn)題以后再說(shuō)。
Apple的iPhone也將Mobile Ajax作為他們首先支持的一種開(kāi)發(fā)技術(shù),這也不是偶然的。我覺(jué)得我們應(yīng)該看到技術(shù)本身的局限,也應(yīng)該看到技術(shù)未來(lái)發(fā)展的趨勢(shì)。我們之所以對(duì)基于Web標(biāo)準(zhǔn)的技術(shù)局限看的這么清楚,也是因?yàn)閷?duì)這些技術(shù)我們已經(jīng)有了大量的實(shí)踐。而其他的RIA技術(shù)目前尚未得到大量的實(shí)踐,它們描繪的美好藍(lán)圖能否實(shí)現(xiàn)還未可知,它們存在哪些局限還沒(méi)有充分暴露出來(lái)。
這里李錕引用發(fā)布于InfoQ中文站上的這條新聞,其實(shí)表明了基于標(biāo)準(zhǔn)的Ajax有可能被作為另外一種可行的技術(shù)手段,在以前被認(rèn)為是插件型RIA天下的受限環(huán)境中被重新認(rèn)可。這就是說(shuō)現(xiàn)在的新興RIA技術(shù)(如Apollo、Silverlight等)并不一定會(huì)以Ajax殺手的形式出現(xiàn),而是作為Ajax的補(bǔ)充,所以RIA的未來(lái)似乎更加撲朔迷離。而作為Ajax開(kāi)發(fā)者,這是一條好消息,證明現(xiàn)在正在使用的HTML、CSS和Javascript工具箱并沒(méi)有過(guò)時(shí),不需要在恐慌中去學(xué)習(xí)新的RIA技術(shù),而應(yīng)該坦然地喜愛(ài)你正在使用的技術(shù),就像DHH和李錕這些Web開(kāi)發(fā)者一樣。
最后,關(guān)于最近在RIA界非常火的離線存儲(chǔ)技術(shù)(如Google Gears、Dojo Offline等),DHH也寫(xiě)了一篇有趣的Blog,有興趣的讀者也可以一并閱讀。