在本文中,您將使用最新的 Web 技術開發 Web html' target='_blank'>應用程序。這里的 大部分代碼只是 HTML、JavaScript 和 CSS — 所有 Web 開發人員的核心技術。所需的最重要的工具是用于進行測試的瀏覽器。本文大部分代碼將在最新桌面瀏覽器上運行,但也有一些例外,我們將在文章中進行說明。當然,您也必須在移動瀏覽器上測試,為此,您需要最新的 iPhone 和 Android SDKs。本文將使用 iPhone SDK 3.1.3 和 Android SDK 2.1。本文的樣例還將使用一個代理服務器來從瀏覽器訪問遠程服務。這個代理服務器是一個簡單的 Java™ servlet,但也可以使用以 PHP、Ruby 以及其他語言編寫的代理輕松替換。
移動設備上的多線程 JavaScript
對于大多數開發人員來說,多線程或并發編程并不新鮮。但是,JavaScript 并不是一種支持并發編程的語言。JavaScript 的創建者認為,對于 JavaScript 這樣旨在 Web 頁面上執行簡單任務的語言來說,并發編程容易出現問題,而且沒有必要。然而,由于 Web 頁面已經發展成為 Web 應用程序,使用 JavaScript 完成的任務的復雜程度已經大大增加,向 JavaScript 提出了與其他語言同等的要求。與此同時,使用其他支持并發編程的語言工作的開發人員經常面臨伴隨線程和 mutexes 這樣的并發原語而來的超高復雜性的困擾。實際上,最近像 Scala、Clojure 和 F# 這樣的幾種新語言已經發展,它們都有可能簡化并發性。
常用縮略詞 Ajax:異步 JavaScript + XML API:應用程序編程接口 CSS:層疊樣式表 DOM:文檔對象模型 HTML:超文本標記語言 REST:具象狀態傳輸 SDK:php?/%C8%ED%BC%FE%BF%AA%B7%A2%B9%A4' target='_blank'>軟件開發工具包 UI:用戶界面 URL:統一資源定位符 W3C:萬維網聯盟 XML:可擴展標記語言Web Worker 規范不只是向 JavaScript 和 Web 瀏覽器添加并發性,而且是以一種智慧的方式添加,這種方式將增加開發人員的能力,但不會向他們提供一種會導致問題的工具。 例如,多年來,桌面應用程序開發人員一直在使用多線程來支持他們的應用程序訪問多個 I/O 資源,以避免在等待這些資源時凍結 UI。然而,當這些多線程更改共享的資源(包括 UI)時,這樣的應用程序通常會出現問題,因為這種行為可能會導致應用程序凍結或崩潰。有了 Web Workers,這種情況就不會發生。衍生線程不能訪問主 UI 線程訪問的資源。事實上,衍生線程中的代碼甚至不能與主 UI 線程執行的代碼位于同一個文件中。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答