天天看點

《JavaScript面向對象程式設計指南(第2版)》——1.3 分析現狀

本節書摘來自異步社群《javascript面向對象程式設計指南(第2版)》一書中的第1章,第1.3節,作者:【加拿大】stoyan stefanov著,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

有意思的是,javascript必須運作于某種宿主環境中。web浏覽器僅僅是其中一種,javascript也完全可以運作在伺服器端、桌面以及移動裝置中。如今,我們已經可以用javascript來實作以下功能。

建立擁有強大而豐富功能的web應用程式(這種應用程式往往運作在web浏覽器中)。另外還有基于html5的許多特性,例如應用緩存、本地存儲、本地資料庫。無論是線上應用還是離線應用,web應用都可以做得非常強大。

使用.net和node.js編寫伺服器端腳本,或者使用rhino(這是一種用java實作的javascript引擎)這樣的架構來進行程式設計。

為移動裝置編寫各種應用程式。借助于phonegap及titanium這樣的工具,我們完全可以使用純javascript來編寫iphone、android或其他平台上應用程式。另外值得一提的是,移動平台firefox os的原生程式設計語言就是javascript、html和css。

使用actionscript建立富媒體應用(如flash、flex)。actionscript也是一種基于ecmascript标準的腳本語言。

編寫各種基于指令行的、用于桌面自動化管理的腳本任務。其自帶的宿主環境如windows scripting host及mac下的webkit javascript core。

為一些桌面應用程式編寫擴充或插件,例如dreamweaver、photoshop及大多數浏覽器。

使用mozilla xuirunner及adobe air建立跨作業系統的桌面應用程式。

使用yahoo! widgets及mac dashboard widgets等工具包來建立桌面小工具。其中,yahoo! widgets還可以在智能電視上運作。

當然,這裡列出的遠遠不是該語言的全部應用。javascript應用的确發端于web頁面,但如今幾乎可以說是無所不在了。另外,浏覽器廠商如今都将運作速度視為産品的競争優勢之一,是以都緻力于建立更快的javascript引擎。這對于使用者與開發者來說無疑是個好消息,并且這将打開一扇大門—在新的領域,例如在圖像、音頻及視訊處理、遊戲開發等方面,javascript也必将一展拳腳。