Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android 助力雲計算:雲計算和 Android 軟件堆棧

Android 助力雲計算:雲計算和 Android 軟件堆棧

編輯:Android開發實例

  在一個充斥著蹩腳比喻的行業,突然有人跳出來並抓住富有創造力的業務和 IT 人員的想象力,這一點也不奇怪。雲計算 就是這樣一種比喻,而且它已經(請允許我這樣說)席卷了全球。但雲計算到底是指什麼呢?

  當然,雲是由許多水分子組成的,幾乎有幾億個。雲沒有中央控制,基本上可以隨風吹向各處。從這個角度來說,Internet 中無數個具有各種用途的客戶機和服務器以及驅動其發展的控制實體就像是雲。將這一概念與手機公司帶給我們的無線數據革命結合後,我們似乎就處在一種無形的 “雲” 計算力量中了。

  自電子計算機誕生以來,就一直有人對計算機的 4 個主要功能部分進行明確的劃分:

  提供人機接口的輸入/輸出(I/O)設備

  中央處理單元

  易失性隨機訪問存儲器(RAM)

  非易失性存儲器

  前三個部分將 “計算” 功能植於計算機中。第 4 部分通常存儲有價值的數據資產,這一部分將隨著雲計算的到來而發生翻天覆地的變化。有價值的數據駐留在非易失性存儲器中,以免因為斷電而丟失 — 不管這種斷電是有意還是無意。非易失性存儲設備一般為硬盤,但也可以是安全數字(SD)卡之類的固態設備,甚至可以是磁帶設備(不過現在已經過時了)。但是這些設備都有它們的局限性。

  隨著時間的流逝,技術也在不斷進步,出現了計算機網絡,在計算機網絡上,企業中有價值的數據資產都集中在一台由多個終端共享的計算機中,而且定期對這些數據進行備份是一項基本的 IT 職能。這種模型(稱為大型機模型)提供了許多優點 — 其中之一就是它減輕了每個終端位置的工作負載。僅具有一個微型終端(鍵盤、鼠標、顯示器和 PC)的小型辦公室可以訪問 GB 級的企業數據,而無需提供大型機的處理能力 — 只要它們通過電纜連接在一起。

  下一個巨大的范式轉變來自於我們所熟知的 Internet,在其中,龐大的計算機系統(本地網絡)可以為位於全世界任何可以使用衛星天線的位置的大量微型終端提供服務。這種配置的無線遠程特點即被稱為雲。

  隨後出現了個人數字助理(PDA)、移動電話和智能手機,計算機的微型化已經發展到我們熟知的並非常喜愛的手持形式。一夜之間,智能終端已經成為無數高生產力人員的工具,它們以驚人的速度生成和消費著信息。

  在 20 世紀 90 年代中期和末期,電子郵件和萬維網(World Wide Web)是主導雲的最流行應用程序。大多數人都使用 Web 浏覽器與雲進行交互並認識到 Internet 是一種比較簡單的應用。隨著 Yahoo! 和 Google 在商業方面的成功,TB 級服務器和網絡連接取代本地硬盤成為首選的非易失性存儲設備。就像許多具有超前思維的預見者所預言的那樣,雲已經成為了一種像水、電話和電那樣不可缺少的現代實用工具。通過將移動電話數字網絡作為主要的 Internet 服務提供商(Internet Service Provider,ISP),雲已經發展為使用幾百萬個微型手持設備作為顯示服務器數據的主要工具。

  就像雲到處移動和隨風變化那樣,這些微型手持設備的操作模式也是如此 — 終端變得越來越小,功能越來越強,可移植性增強了許多,服務器的功能也越加強大,通過軟件虛擬化並根據使用收費,能更好地滿足用戶的數據需求。

  公司不再需要維護大型而昂貴的服務器 “集群”,現在有另一種成本更低的方法:通過 Google、Amazon 和 IBM® 之類的供應商實現服務外包。通過虛擬化,以前在定制環境中運行的應用程序現在可以被復制或 “映像化”,從而在供應商服務器的雲中運行。通過恰當地對這些服務計費,公司就不需要在服務空閒期間支付高額費用。

  Dalvik 運行時字節碼解釋程序非常類似於 Java™ 語言的字節碼解釋程序,它添加了幾個獨特的特性,使用獨特的方式定義了 Android 的安全和電力保持模型。例如,當前運行的每個應用程序都運行自己的用戶 ID 和解釋程序副本以嚴格區分進程,從而實現安全性和可靠性。

  Android 應用程序框架允許您使用和替換您認為適合的組件。這些高級 Java 類與定義 Android API 的組件緊密集成在一起。

  Android 核心應用程序包括 WebKit 浏覽器、Google 日歷、Gmail、Maps 應用程序、SMS messenger 和一個標准的電子郵件客戶機等等。Android 應用程序是用 Java 編程語言編寫的,您可以隨時從 Android 市場下載更多的 Android 應用程序。

  每個 Android 應用程序可以被進一步劃分為不同的功能單元:

  活動(Activities)

  目的(Intents)

  服務(Services)

  安全模型(Security model)

  活動

  活動 是 Android 應用程序的一個組件,它擴展 Activity 基類並定義一個由響應事件 的 視圖(View)組成的接口。如果一個應用程序由 3 個窗口(例如,一個登錄窗口、一個文本查看窗口和一個文件查看窗口)組成,那麼每一個窗口通常用一個不同的 Activity 類來表示。

  Android 維護每個從主頁中運行的應用程序的歷史堆棧,您可以單擊 Back 按鈕回滾這些活動的歷史。

  目的

  目的 與活動一樣,是應用程序代碼中的一個特殊類,定義應用程序要做的事情。目的添加了一個間接層來支持復雜組件的重用和替換。例如,某個應用程序可能提供了一個標簽為 Clients 的按鈕,單擊該按鈕時,會顯示一個聯系人列表,上面都是您的客戶。然後就要使用間接層了:您不需要對這些聯系人使用默認查看器;相反,可以使用一種不同的查看器。

  開發環境:Eclipse、Windows、Linux

  考慮 Android 開發環境時,程序員們有多種選擇。他們可以使用 Microsoft® Windows® XP 或 Windows Vista®、Macintosh OS X(V10.4.8 或更高版本,僅 x86)、Desktop Linux(首選 Ubuntu)。這些常用的操作系統都有可下載的軟件開發工具包(SDK)。

  您可以使用 Eclipse 或 Sun Microsystems 的 NetBeans 之類的 GUI IDE,也可以使用命令行方法和標准編輯器,您可以任意選擇。

  Android 社區鼓勵相互交流,創建 Android 的公司也是如此,這些公司有 Google、HTC、T-Mobile 和開放手機聯盟項目(Open Handset Alliance Project)的其他成員。開放 的真正含義就是開放人們(程序員、用戶、銷售人員等)之間的交流、開放協議和開放編程 API。

  借助各種軟件許可,組織也可以在 Android 上放置專用程序和數據。這不僅可以讓組織不會脫離平台,而且也不會限制消費者的選擇。這是一種雙贏的組合。

  開始使用 Android SDK

  任何對開發 Android 感興趣的人所要做的第一件事就是下載並安裝 Android SDK。然後開始准備編程。每個人的編程方式都不盡相同。一些人(包括我在內)喜歡在學習完所有內容後再開始編碼。其他一些人則喜歡立即開始並練習完整 Android 文檔給出的教程示例。但不管您喜歡什麼樣的方式,最終必須編寫一些代碼。在開始之前,請看一下 Android 針對經典的 Hello World 程序給出的編碼。

  開發人員資源

  雲中有大量的資源可用於 Android 開發,包括幾個 wiki 和 Android 社區論壇,以及多個 Android 編程 blog。推出 Android 的主要公司 Google 實際上是一個通信公司,因此提供了幾個有用的論壇(稱為 Google Groups),供擁有不同技能集和才能的開發人員進行交流。

  雲計算(特別是 Android)目前是非常熱門的現象。

  關於雲計算的思考:展望未來

  IBM 正致力於在 Research Triangle Park, N.C. 和東京創建兩個大型雲計算中心。要了解為您的定制雲計算應用程序提供動力的服務,只需要訪問中央 Web 站點並探究 IBM 所做的相應工作。

  您可以編寫應用程序來利用雲,雲中的備份和恢復設施都是自動化的,經驗豐富的工程師可以使您的構想變為現實。將 Android 手機想像成 IBM 集體式計算功能的一項擴展。當坐在咖啡店裡細細酌飲時,您希望在手機上看到什麼呢?現金流量圖?還是呈上漲趨勢的證券數據和圖形?可能是來自 NASA 的最新圖片,您昨天晚上曾在一個速度非常快的並行處理服務器上使用定制過濾程序進行過處理?可能是直接來自國家地震信息中心(National Earthquake Information Center)的最新地震數據,或者僅僅是昨晚誰贏了 NBA 冠軍杯。數據 “是現成的”,處理能力也是:您只需要實現它。

  時間會告訴我們未來將會創造出怎樣的創新性雲計算應用程序,那時每個人都將站在巨人們的肩膀上。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved