|
JavaScript似乎一直都當(dāng)作是解析型的腳本語言,程序開發(fā)人員往往對此不懈一顧。認(rèn)為一個腳本也沒有太多的難度,那似乎為不懂程序的人專門設(shè)計(jì)的東西,不值得真正搞開發(fā)的去研究和應(yīng)用。
從LiveScript 到JavaScript,在大量的時間JS都只是作為一種Script腳本在應(yīng)用。更多的開發(fā)者只有在前端表單驗(yàn)證、以及諸如應(yīng)用飄浮、移動、下拉聯(lián)動菜單等網(wǎng)頁特效或者必須通過界面才能得到的東西,比如客戶端的時間、分辨率、以及一些在當(dāng)前窗口操作的事件時才用得到它。于是JavaScript成了網(wǎng)頁特效語言,專門用來給頁面加上各種酷炫的效果了。JS似乎只能做些華而不實(shí)界面效果,甚至用戶還可以隨時屏蔽,一些瀏覽器工具條自動把 JavaScript給屏蔽了……
程序員對JavaScript的不重視,直接導(dǎo)致了JavaScript被忽視;而大量互聯(lián)網(wǎng)特效應(yīng)用,加速了JS被地當(dāng)作一種腳本。而直到Jesse James Garrett 把JavaScript XMLhttp DOM等組合在一起正式提出Ajax后,JavaScript才忽然地炙手可熱起來。加上Google、Yahoo、Microsoft等大型公司在Ajax方面的大量應(yīng)用,JavaScript隨著Ajax也越來越受到關(guān)注。
Ajax是一種新瓶裝老酒的技術(shù)組合,或者說Ajax不是一種技術(shù),而是一種概念。可正是這種能給互聯(lián)網(wǎng)應(yīng)用帶來革新的概念讓大家產(chǎn)生濃厚興趣,原因不僅在于技術(shù)組合本身,也在于互聯(lián)網(wǎng)應(yīng)用技術(shù)模式的發(fā)展趨勢。RIA的發(fā)展趨勢需要新的技術(shù)和方法來配合,Ajax在現(xiàn)階段正好滿足了豐富互聯(lián)網(wǎng)應(yīng)用的部分發(fā)展要求,而重新利用上和定位JavaScript將是一種較好實(shí)現(xiàn) RIA的選擇。Ajax(或者說目前最佳豐富互聯(lián)網(wǎng)技術(shù)應(yīng)用)中真正的核心應(yīng)當(dāng)是JavaScript,目前的趨勢是需要用JavaScript這種程序語言來重構(gòu)網(wǎng)頁、用JavaScript來格式化數(shù)據(jù)。而XMLhttp是一種傳輸數(shù)據(jù)的橋梁和協(xié)議,與原來GET和POST相類似,而XMLhttp很好地為JavaScript服務(wù)罷了。
實(shí)際上JavaScript就像 世界上最被誤解的語言(http://www.crockford.com/Javascript/Javascript.html)里描述的JavaScript是世界上使用人數(shù)最多的編程語言之一,除了后綴是-script讓人起疑之外,其他各種計(jì)算、流程控制、數(shù)組、函數(shù)一應(yīng)俱全,與Java、C等等也很像。
當(dāng)然也會程序員說,JavaScript不能操作文本(操作本地也不安全)、無法生成圖像、也沒有面向?qū)ο蟆]有類、沒有繼承、無法Debug,無法通過網(wǎng)絡(luò)傳輸數(shù)據(jù)。所以,JavaScript不是一門真正意義上的程序語言。于是這樣JavaScript就被忽略為在僅在頁面設(shè)計(jì)當(dāng)中使用的腳本了。但是,當(dāng)看到JSON這樣面向?qū)ο蟮腏S應(yīng)用、JS集合、3D圖形、Prototype里類和繼承,再加上XMLhttp異步傳遞網(wǎng)絡(luò)數(shù)據(jù),這時候還能說JavaScirpt僅僅是簡單的腳本嗎?
幾年前就有先見者指明JavaScript是世界上最被誤解的語言,幸好,今天我們已經(jīng)認(rèn)識到JS的重要性,不會一直再誤會下去。
看到諸如
http://www.NETvibes.com/
http://developer.yahoo.com/yui/
http://www.backbase.com/
http://www.meebo.com/
http://www.miniajax.com/
http://www.protopage.com/
http://www.google.com/
http://www.a9.com/
http://www.live.com/
http://www.snap.com/
http//www.ask.com/
http://dojotoolkit.org/
http://www.ask.com/
這些應(yīng)用時,JavaScript就不會只是被當(dāng)成腳本語言了。JavaScript具有面向?qū)ο蟮母拍睿部梢岳^承類和拋出異常。正因?yàn)檫@些,也就是現(xiàn)下為何Ajax框架層出不窮,并且如此火爆的原因了。程序開發(fā)者已經(jīng)意識到JavaScript語言的重要性,以及重新認(rèn)識它之后給網(wǎng)頁開發(fā)帶來的變革,對于無論是前端還是后臺開發(fā)人員,JavaScript都不只是從前所認(rèn)為的那樣-----只是簡單的腳本。
在一個項(xiàng)目當(dāng)中,尤其網(wǎng)頁開發(fā)項(xiàng)目,JavaScript幾乎是必不可少的語言,它不要編譯器,也不需要專門的解析器。只要客戶端機(jī)器上有瀏覽器,只要把開源的JavaScript 引擎加入瀏覽器中(幾乎所有的瀏覽器都支持,所有的電腦都有瀏覽器

而使用JavaScript,至少有下面這幾點(diǎn)好處:
1,增加交互動態(tài)應(yīng)用,豐富界面應(yīng)用,提高用戶體驗(yàn)
2,節(jié)省后臺開發(fā)成本,減少后臺開發(fā)量, 顯示HTML/XHTML和格式化數(shù)據(jù)交給JS處理
3,節(jié)省網(wǎng)絡(luò)帶寬,讓瀏覽速度更快,減輕服務(wù)器壓力,XMLhttp 減少刷新數(shù)據(jù)
4,體現(xiàn)RIA,B/S模式的利器,通過JS可以達(dá)到C/S模式的效果
5,WEB版軟件最好的界面實(shí)現(xiàn)者,F(xiàn)lash,Applet也還不錯,不過目前JavaScrip是最好的
6,……
瀏覽器的兼容性或者用戶屏蔽JS雖然是個頭疼的問題,但絕大多數(shù)瀏覽器都在遵循ECMAScript1.5標(biāo)準(zhǔn),大多數(shù)用戶是不會禁用JS的,因?yàn)殛P(guān)閉JS使用互聯(lián)網(wǎng)幾乎是件困難的事。
雖然還有安全、開發(fā)和維護(hù)成本等等的不利因素在里面,但如果把JavaScript很好地與后臺結(jié)合起來,JavaScript將是網(wǎng)頁開發(fā)非常重要的一門語言,甚至不亞于Java。現(xiàn)在利用Java、php做后臺的網(wǎng)站越來越多,而再有效結(jié)合JavaScript,利用JavaScript來t處理和顯示頁面,這樣,豐富互聯(lián)網(wǎng)應(yīng)用、提高用戶體驗(yàn)將成為可能。
JavaScript被程序員忽視這么久后,終于踏著RIA的步伐迎來了春天,不管怎么說,軟件程序從桌面走向網(wǎng)絡(luò)、走向?yàn)g覽器將是必然的趨勢。不是說要取代桌面應(yīng)用,而是豐富互聯(lián)網(wǎng)應(yīng)用有太多的路要走。
而其中,桌面還是互聯(lián)網(wǎng)應(yīng)用其后臺是很類似的,都可以用Java,C,C#等等。而在前臺,在互聯(lián)網(wǎng)軟件應(yīng)用上,JavaScript將會很好地?fù)?dān)任界面開發(fā)程序語言的角色。
畢竟,JavaScript不再僅僅是腳本,而是一門可以面向?qū)ο蟮某绦蛘Z言。當(dāng)然了,要想真正利用好JavaSript這門語言,精通一門后臺語言必不可少,而也只有這樣JavaScript才不會是僅僅是腳本。
這里我說了大量JavaScript有利的一面,當(dāng)然JS依然存在著這樣那樣的問題,但我想RIA發(fā)展是個趨勢,B/S模式也是一個趨勢,JavaScript也還在一直向前發(fā)展(新的版本也在研究)。我相信隨著WEB2.0這種用戶與網(wǎng)站以及用戶之間的彼此交互應(yīng)用越來越多,也隨著網(wǎng)絡(luò)帶寬越來越快,RIA將會有一個很好的發(fā)展,而JavaScript在RIA中也將發(fā)揮越來越重要的作用。
JavaScript技術(shù):JavaScript 不只是腳本,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。