iOS開發架構介紹(二)—iOS 架構及開發相關資訊

來源:互聯網
上載者:User

iOS 開發相關資訊

iOS是運行於iPhone、iPod touch以及 iPad裝置的作業系統,它管理裝置硬體並為手機本地應用程式的實現提供基礎技術。根據裝置不同,作業系統具有不同的系統應用程式,例如Phone、Mail以及Safari,這些應用程式可以為使用者提供標準系統服務。

iPhone SDK包含開發、安裝及運行本地應用程式所需的工具和介面。本地應用程式使用iOS系統架構和Objective-C語言進行構建,並且直接運行於iOS裝置。它與web應用程式不同,一是它位於所安裝的裝置上,二是不管是否有網路連接它都能運行。可以說本地應用程式和其他系統應用程式具有相同地位。本地應用程式和使用者資料都可以通過iTunes同步到使用者電腦。

iOS 架構

iOS架構和Mac OS的基礎架構相似。站在進階層次來看,iOS 扮演底層硬體和應用程式(顯示在螢幕上的應用程式)的中介,如圖
1-1所示。您建立的應用程式不能直接存取硬體,而需要和系統介面進行互動。系統介面轉而又去和適當的驅動打交道。這樣的抽象可以防止您的應用程式改變底層硬體。

圖 1-1  應用程式位於iOS上層

請注意: 雖然應用程式通常會和底層硬體隔離, 但是應用程式代碼仍需考慮裝置之間的某些差異。舉個例子,iPad和iPod touch不能開啟包含電話號碼的URL但是iPhone則可以。

iOS實現可以看作是多個層的集合("Game Kit 架構"含有對這些層的介紹),底層為所有應用程式提供基礎服務,高層則包含一些複雜巧妙的服務和技術。

圖 1-2   iOS的層

在編寫代碼的時候,應該儘可能地使用高層架構,而不要使用底層架構。高層架構為底層構造提供物件導向的抽象。這些抽象可以減少需編寫的程式碼數,同時還對諸如socket和線程這些複雜功能進行封裝,從而讓編寫代碼變得更加容易。雖說高層架構是對底層構造進行抽象,但是它並沒有把底層技術屏蔽起來。如果高層架構沒有為底層架構的某些功能提供介面,開發人員可以直接使用底層架構。

本文檔後續章節將對每一層所包含的技術和架構進行描述。

iPhone SDK 包含哪些東西?

在使用Intel晶片的Macintosh電腦開發iOS應用程式所需的全部介面、工具以及資源全都包含於iPhone SDK。

蘋果公司將大部分系統介面發布在架構這種特殊的資料包。一個架構就是一個目錄,它包含一個動態共用程式庫以及使用這個庫所需的資源(例如標頭檔、映像以及輔助應用程式等)。如果要使用某個架構,則需要將其連結到應用程式工程,這一點和使用其他共用庫相似。另外,您還需要告知開發工具何處可以找到架構標頭檔以及其他資源。

除了使用架構,蘋果公司還通過標準共用庫的形式來發布某些技術。 由於iOS以UNIX為基礎,作業系統底層的許多技術都源自開源技術,這些技術的許多介面可以從標準庫和介面目錄訪問。

SDK中還包含下述重要組件:

  • Xcode工具 -提供iOS應用程式開發工具,包括如下關鍵應用程式:

    • Xcode -是一個整合式開發環境,它負責管理應用程式工程。您可以通過它來編輯、編譯、運行以及調試代碼。Xcode還整合了許多其他工具,它是開發過程中使用到的主要應用程式。

    • Interface Builder -以可視化方式組裝使用者介面的工具。通過Interface Builder建立出來的介面對象將會儲存到某種特定格式的資源檔,並且在運行時載入到應用程式。

    • Instruments - 運行時效能分析和調試工具。您可以通過 Instruments 收集應用程式運行時的行為資訊,並利用這些資訊來確認可能存在的問題。

  • iPhone模擬器 -是Mac OS X平台應用程式,它對iOS技術棧進行類比,以便於您可以在基於Intel的Macintosh電腦上測試iOS應用程式。

  • iOS參考庫- SDK預設包含iOS的參考文檔。另外,如果文件庫有更新,則更新會被自動下載到本地。通過選擇Help > Developer Documentation就可以看到參考庫。

SDK提供編寫應用程式所需的軟體,而且Xcode和Instruments允許您直接與綁定裝置進行互動,在目標硬體運行並調試代碼。如果您需要在實際裝置上開發,請加入蘋果公司的收費iPhone開發人員計劃,並將裝置配置成開發用途。如需進一步瞭解iPhone開發人員計劃,請訪問http://developer.apple.com/iphone/program/頁面。

如果您需要瞭解如何安裝iPhone SDK以及如何使用iPhone SDK開發iOS應用程式,則請參考iOS開發指南。如果進一步瞭解iOS的架構,並且希望瞭解何處可以找到底層的系統庫,則請參考“iOS架構”。

您可以在 iOS 建立什麼應用程式?

使用者可以在裝置上運行兩種不同類型的定製應用程式:Web應用程式和本地應用程式。Web應用程式將HTML、層疊樣式表以及JavaScript代碼結合在一起,以此來實現具有互動性的應用程式,這些應用程式存在於web伺服器,通過網路傳送到使用者裝置上,並運行於Safari瀏覽器。而本地應用程式則是直接安裝在裝置上,無需配備網路連接就可以運行。

iPhone SDK僅能用於建立顯示於裝置Home屏的本地應用程式,它不支援建立其他諸如驅動、架構、動態庫等類型的代碼。如果您希望將某個架構或者動態庫整合到應用程式,則應在鏈編工程的時候靜態地將其連結到應用程式執行檔案。

如何使用參考庫?

iOS參考庫包含各種文檔、範例代碼以及教程,這些材料可為編寫應用程式提供協助。不過參考庫包含數千頁的文檔,上至起步介紹,下至API參考文檔盡皆涵蓋其中。因此,明白如何找到需要的資訊是開發過程的重要步驟。參考庫使用幾種數種技術來組織內容,以使其更易於瀏覽。

您可以從蘋果開發人員網站訪問iOS參考庫,也可以從Xcode訪問。 只要在Xcode中選擇 協助>開發人員文檔,就可以把XCode的文件視窗顯示在螢幕上。此視窗是訪問iOS開發資訊的核心,您可以在其中瀏覽文檔並執行搜尋,還可以為稍後可能閱讀的文檔添加書籤。各個文檔早已按其內容進行歸類,這樣可為更新提供便利,也可以把搜尋的範圍精確至相關的文檔。

在安裝 iPhone SDK的時候,Xcode 會自動為您安裝包含iOS參考庫的文檔集。(XCode也會自動為您下載文檔更新,不過您可以在喜好設定中取消此行為。)iOS參考庫包含非常多的資訊。因而,對其排版設計稍作瞭解意義重大。圖
1-3顯示的是Xcode文件視窗中參考庫的主。頁面頂部的工具列包含搜尋方塊和按鍵,可用於導航至其他已安裝的文檔集或是已建立的書籤。 您可以按主題、架構或者其他您正在尋找的資源類型瀏覽文檔,也可以使用過濾器來控制文檔列表,減少顯示的文檔集。

圖 1-3   iOS參考庫

重要:  iOS參考庫的內容有可能不是最新的,您可以從iPhone開發中心(http://www.apple.com.cn/developer/iphone)訪問最新的文檔、發布紀要、技術紀要、技術,
技術Q&A以及範例代碼。所有的文檔都有HTML格式版本,大部分有PDF格式版本。

參考庫提供海量資訊,在編寫代碼時翻查這些資訊非常麻煩。為了協助您快速找到某些特定資訊,XCode為您提供如圖
1-4所示的Quick Help視窗。該視窗向您顯示和某個指定符號相關的資訊,包括它的文法、描述以及可以使用該符號的SDK版本。另外,該視窗還顯示該符號的相關文檔以及範例代碼。點擊視窗中的連結就可以進入到參考庫中相應的資源。如果希望顯示Quick Help視窗,請按住Option鍵然後再雙擊Xcode編輯視窗中的某個符號。

圖 1-4  Xcode中的Quick help視窗

如果需要進一步瞭解文件視窗和Quick Help視窗,請參考Xcode
Workspace指南

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.