Javascript可以用來做什麼

沒有一個語言比Javascript更讓我鍾愛的了,因爲它簡單易學卻用途多多,自由自然卻不散漫。也因爲簡單易學。所以會寫Javascript 人很多,但你要是問會用javascript做什麼,普遍的回答是:“註冊表單驗證...日曆控件..ajax...網頁特效...”,如你再問還有什麼做過其他應用,回答往往是反問:“Javascript不就是做這些應用的嗎?”。AJAX的流行的確使得Javascript被人們重視起來,但是還遠遠不夠,尤其是國人,所以我纔想寫點文字談談Javascript的用途,爲Javascript“平反”。

作爲最流行的腳本語言之一,javascript的應用實際上也很豐富,下面舉一些我接觸的應用:

1.富客戶端開發(RIA)
只要看看google幾款產品:iGoogle、gmail、google reader、google document.....都是RIA應用的典型,沒有一款不是javascript的巔峯之作,不用多說,這個大家應該都知道,實在不知道的迷迷糊糊也知道了。

2.WebOS
WebOS還只是一個概念,雖然已有不少嘗試性的作品,但是受限與瀏覽器的不爭氣,並沒有突破性的發展,也許Chrome 3的時候條件會成熟。選用javascript做WebOS的核心開發沒有太多爭議,因爲另外一個種子選手ActionScript雖然與 javascript有血緣關係,但受制於flash封閉的架構體系,尚不能擔此重任。當然WebOS的實現對javascript本身也提出了更多要求,安全和性能的問題最爲突出,不過這應該是瀏覽器開發人和WebOS底層引擎開發人員要做的事,我們等着吧。

3.基於web開發的軟件(web-based soft)
什麼是基於web開發的軟件?好,給你舉些例子:gtlak、金山詞霸2007+、迅雷遊遊、Picasa、SAP(你懷疑SAP,你不知道AJAX是誰最先開始用的?當然SAP太大了,所以只是部分是)……少舉幾個例子,以後談web-based soft的時候再說(-_-#)。技術上,這類的開發和RIA開發沒有什麼區別,但是快速開發和豐富的效果是高級語言望塵莫及的,Javascript在這裏應用裏通常來說起着界面的實現與操作、數據讀取(Ajax或讀取本地的數據庫)和展示、與窗口程序的通訊接口等的作用。

4.基於XUL的軟件開發
Firefox的界面就是用XUL+Javascript實現的,不相信的可以到firefox的安裝目錄的chrome下隨便解壓一個jar包看看。如果你只會javascript和一點XML,再看看XUL的文檔,嗯,你現在就可以開發出一個客戶端軟件,像Joost(www.joost.com)那樣炫,當然你也可以去開發firefox插件了。

5.第三方組件(widget)的開發
最早使得桌面小工具流行起來的是Yahoo widgets,這些widget的開發基本上都是用javascipt開發的,yahoo提供了組件引擎和訪問系統數據的接口,javascript只需調用這些接口,這種模式類同與在XUL裏用XPCOM,如果有好引擎,web程序員離開高級語言的程序員就能用web開發桌面軟件就不是夢想了,比較遺憾的找不到人和我一起開發這個引擎(有興趣的VC++程序員可以聯繫我)。

6.網遊開發
這裏說的網遊開發不是僅僅指的現在流行的web在線網遊,那些類同於RIA。我所說的是真正意義上的3D網遊,google的O3D和其他一些基於瀏覽器的3D插件都在嘗試一個混合技術模式:用高級語言開發一個3D引擎,用XML處理地圖和貼圖,最後用javascript來實現事件和交互。

……

等等,看到這裏你是不是覺得javascript無所不能了?總結下,其實不難發現,Javascipt的擅長是在應用界面的架構和實現,比如邏輯架構、事件處理、交互操作等,這些方面都相對獨立且簡單,不需要很強科學運算,也不需要極高的執行效率,簡單和快速開發纔是javascript的王道,所以你還不是超人,但..是牛人
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章