蘋果Xcode幫助文檔閱讀指南

 

Xcode文檔的結構

image

如上圖,打開後,整個文檔界面有左面的側欄和右面的內容區域構成。左面的側欄能夠選擇不一樣的文檔庫。你的Xcode裏面通常來講有一組不一樣版本的iOS文檔庫、一組不一樣版本的OS X文檔庫,以及一個Xcode文檔庫。程序員

若是你這裏沒有你要查看的文檔庫,你能夠選擇Xcode的Preferences菜單,而後選擇Downloads -> Documentation。在這裏能夠看到已經下載安裝了的文檔庫,尚未下載的文檔庫,能夠酌情選擇。以下圖:編程

image

而後咱們看,文檔內容區域的左側導航區域,這裏揭示了文檔庫的結構。以下圖:安全

image

首先是,Resource Types,也就是資源類型。文檔庫裏面所有的文檔都是這幾個類型中的一個:網絡

  1. Getting Started —— 新手入門,通常來講,是給徹底的新手看的。建議初學者看看,這裏面有一些創建觀念的東西,有了這些創建觀念的東西,後面的學習就比較容易了。
  2. Guides —— 指南,指南是Xcode裏面最酷最好的部分,學會看指南則大多數狀況徹底不用買書。Xcode文檔裏面的指南,就是一個一個問題的,從一個問題,或者系統 的一個方面出發,一步一步詳細介紹怎麼使用Cocoa庫的文檔。通常程序員比較熟悉的是Reference,就是你查某個類、方法、函數的文檔時候,冒出 來的東西。那些實際上是一點一點的細碎知識,光看那些東西就徹底沒有脈絡。而Guides就是幫你整理好的學習的脈絡。
  3. Reference —— 參考資料。一個一個框架一個一個類組織起來的文檔,包含了每一個方法的使用方法。
  4. Release Notes —— 發佈說明。一個iOS新版本帶來了哪些新特性,這樣的信息,熟悉新iOS,比較不一樣iOS版本API不一樣,都須要參考這些文檔。
  5. Sample Code —— 示例代碼。蘋果官方提供的一些示例代碼,幫助你學習某些技術某些API。很是強烈建議學習的時候參考,一方面光看文檔有時候仍是很難弄明白具體實現是怎麼 回事兒。另一方面這些示例代碼都是蘋果的工程師寫的,你從示例代碼的變遷能夠看到蘋果官方推薦的代碼風格流變。
  6. Technical Notes —— 技術說明。一些技術主題文章,有空的時候能夠瀏覽一下。每每會有一些收穫。
  7. Technical Q&A —— 常見技術問答。這是技術社區裏面一些常見問題以及回答的整理。
  8. Video —— 視頻。目前主要是WWDC的視頻,其實是登陸到開發者網站上去瀏覽的,這裏就是快捷方式。想深刻學習的話,必定不能錯過,大量的看,不只能夠學好技術,還能夠練好英文。

總結一下,這裏面的Reference、Release Notes、Sample Code、Technical Notes、Technical Q&A,通常來講只是備查的。主要要看的是Getting Started和Guides。架構

而後下面是Topics,也就是話題,被分爲:框架

  1. Audio & Video —— 音視頻
  2. Languages & Utilities —— 語言和工具,Objective-C的一些知識,App Store的管理工具等。
  3. Mathematical Computation —— 數學計算。
  4. Xcode
  5. Data Management —— 數據管理。
  6. General —— 通常性的問題。
  7. Graphics & Animation —— 圖形和動畫。
  8. Networking & Internet —— 網絡問題。
  9. Performance —— 性能。
  10. Security —— 安全。
  11. User Experience —— 用戶體驗。

這裏很少說,大多數都是顧名思義的問題。可是值得一提的就是有不少初學者說,我想好好了解下圖形和動畫的技術,可是文檔裏面找不到,這就只能說,你睜着大大的眼睛,爲毛左看右看看不到呢?異步

最下面是Frameworks(框架),分爲:編輯器

  1. Cocoa Touch Layer
  2. Media Layer
  3. Core Services Layer
  4. Core OS Layer

這裏咱們先不討論這個東西,後面會仔細講。ide

整體來講左邊的導航區域就是用三種不一樣的維度,來幫你精準定位你須要的內容。函數

如今咱們看內容區域的右邊。注意上面的文檔過濾器。以下圖:

image

假 設,你如今想看關於性能方面的Guides,那麼你應該作的就是在左面的導航,點擊Topics -> Performance,而後在右邊的文檔過濾器上面輸入Guides。或者你也能夠在左邊的導航,點擊 Resource Types -> Guides,而後在文檔過濾器裏面輸入 Performance。

熟練使用導航和文檔過濾器的話,學習就會很是方便快捷。

文檔導讀

前面咱們講Xcode的文檔結構是在介紹如何可以快速定位到你要找的內容。可是不少人的問題多是一開始就根本不知道要讀什麼。

這裏咱們就介紹自學iOS開發應該遵循或者說咱們推薦的必讀文檔的閱讀順序。

閱讀順序:

  1. 《立刻着手開發 iOS 應用程序 (Start Developing iOS Apps Today)》
  2. 《Your First iOS App》
  3. 《Your Second iOS App: Storyboards》
  4. 《Your Third iOS App: iCloud》
  5. 《iOS Technology Overview》
  6. 《iOS Human Interface Guidelines》
  7. 《Learning Objective-C: A Primer》和《Programming with Objective-C》
  8. 《iOS App Programming Guide》
  9. 《View Programming Guide for iOS》和《View Controller Programming Guide for iOS》
  10. 《Table View Programming Guide for iOS》

首 先應該看的是Getting Started裏面的《立刻着手開發 iOS 應用程序 (Start Developing iOS Apps Today)》(中英文版本皆有,蘋果官方的翻譯)。這個文檔講的很淺,可是是創建概念的文檔,你之後在開發裏面常常遇到的概念,在這裏都有包含,特別注 意是,這個文檔看起來簡單,可是每頁下面的相關文章,不是選讀,都是必讀。

即便是不少作了iOS開發好久的同窗,其實也有不少概念上的誤解,現代程序開發愈來愈簡單,工具愈來愈強大,每每有些誤解也能夠繼續前行,可是實際上不創建紮實的基礎是很吃虧的,每每後面理解和解決一個不難解決小問題都要付出不少辛苦。

閱讀這個文檔的目的和檢測標準是,之後你看到iOS開發中的基本概念,都大體全部瞭解。

讀 完《立刻着手開發 iOS 應用程序 (Start Developing iOS Apps Today)》後,應該去看Your XXX iOS App系列這個系列不是什麼很難的文章,你也沒必要着急先去學習Objective-C,學什麼C語言就更不要着急。我推薦的學習方法是有成就的逐步學習 法。在學習系統體系架構、Objective-C以前,你能夠先按照文檔寫一個全天下最簡單的App,完成學習過程當中第一個里程碑。在這個過程當中不用擔憂 有什麼疑問,有什麼不懂,先照着作就是。

閱讀這三個文檔的目的和檢測標準是,把這三個Demo App作出來在模擬器上跑起來。

在這個過程當中,你對開發工具的基本認識就創建起來了,也有了成就感,去了魅(就是消除了對iOS開發的神祕感)。

再 往下,建議你去看《iOS Technology Overview》(iOS技術概覽),iOS不是一個技術,而是一堆技術,前一篇講到文檔導航區域的分類,框架分類的時候,我說不細講的緣由就在於此, 你要作一個動畫應該用Core Animation仍是OpenGL?你要作一些文本相關操做應該用Core Text仍是什麼,就是看這裏。

學習現代的程序開發,語言和框架並重。咱們Tiny4Cocoa叫作這個名字的緣由就是,iOS/Mac開發者的表明每每就是這個Cocoa框架,就是這個SDK。大多數你所須要的功能都躺在框架裏面,你知道框架的結構,你才知道怎麼去尋找相關的技術資料。

閱讀這個文檔的目的和檢測標準是,遇到具體問題,知道應該去看哪方面的文檔。

再 下來,建議閱讀的是《iOS Human Interface Guidelines》,Mac/iOS平臺雖然也是百花齊放各種程序、App都有,可是整體看來,大多數優秀App的UI看起來都和整個系統很協調。這 和Windows以及不少其餘平臺徹底不一樣。這是爲何呢?

很 大程度就歸功於《Human Interface Guidelines》文化,所謂Human Interface Guidelines就是用戶界面的規範,在蘋果它還專門有一個縮寫叫作HIG,是天條同樣的東西。全部的App都推薦遵循HIG,遵循了HIG,你作的 東西用戶看起來就會以爲和整個系統很協調。即便是你要作一些創新的設計,你勢必會打破HIG的限制,可是你這個時候仍舊應該遵循HIG的精神。

此外,你閱讀HIG的很重要一點是瞭解整個UI結構和UE行爲的邏輯機理,這樣才能在你設計界面的時候有所依據。

閱讀這個文檔的目的和檢測標準是,看到任何一個App,你能夠知道它的任何一個UI是系統控件,仍是自定義控件,它的層次關係等等。

《Learning Objective-C: A Primer》是很是初級和簡單的入門,適合先閱讀。《Programming with Objective-C》超微複雜一點點,適合後閱讀。

一 般人建議先學習語言,我反之建議先作了一個App,而後再學習語言。緣由有幾個,首先現代開發工具,每每不是用來開發控制檯程序的,上來就會有框架,光懂 語言不會使用IDE,甚至可能會更麻煩。再其次就是,其實現代語言發展到了面向對象之後,庫每每比語言更復雜,更重要,或者說更多的時候,咱們是在學習 庫,而不是語言,語言只是庫的一個載體。

好比,Delegate和Block等等都和Cocoa的UI異步機制關係緊密,光看代碼,這些語言元素很是難以學習,也徹底不知道其意義在哪裏。

閱讀這個文檔的目的和檢測標準是,看得懂基本的Objective-C代碼,方便後面的學習和閱讀各類示例代碼。

《iOS App Programming Guide》基本上介紹的就是開發一個App的完整流程,包括App的生命週期、休眠、激活等等,裏面介紹的細節頗多。正式開發第一個上線的App以前必看。或者開發了一個App,臨到提交前必看才文檔。

閱讀這個文檔的目的和檢測標準是,瞭解所有流程和不少細節問題。

《View Programming Guide for iOS》和《View Controller Programming Guide for iOS》很是重要。View是整個圖形界面裏面最重要的概念。全部的圖形、界面繪製都基於View。你看到的一切複雜的用戶界面,就是各類不一樣的View 的組合堆疊。

View Controller是View和某種邏輯在一塊兒的組合,本質上這種組合不是必須的,可是是大大下降編程複雜度的一種設計。不少人不懂什麼是View什麼是View Controller,這樣寫起代碼來就很痛苦。

閱讀這個文檔的目的和檢測標準是,深入理解什麼是View,什麼是View Controller,理解什麼狀況用View,什麼狀況用View Controller。

UITableView是最重要的一個控件,是最經常使用的UI界面元素。在UICollectionView出現以前,大量的內容列表展現的自定義控件都是基於UITableView,好比不少書架、圖片Grid其實都是UITableView作的。

因此《Table View Programming Guide for iOS》很是重要,必定要好好閱讀。

閱讀這個文檔的目的和檢測標準是,深入理解UITableView/UITableViewController的理論和使用方法。

我推薦的必讀文檔就這麼多,仔細看的話,最多也就是今天就看完了。學習一個東西,若是有一點點耐心,有正確的方法其實不難,不是說腦子非要很聰明,大多數人均可以作到一個星期就學會iOS開發,其實就是讀完這些文檔,大多數人就會了。

就像我強調了無數次,閱讀英文文檔不難,我本身從當年看英文文檔很是吃力,必須查詞典開始,認真的看英文文檔,不會就查詞典,一個多月過去,讀英文文檔就徹底不須要查詞典了。

咱們公司主程 @sycx 老師,也說他原來英語也很很差,甚至如今英語仍舊很爛,可是看英文文檔徹底沒有問題,也就是幾個星期的認真學習之後就突破了。

其實學習iOS也如此。固然我不是說你看懂這10組文檔就不再用看別的了。而是說,若是你看懂了這10組文檔,你就從初學者,或者是雖然會寫一些程序,可是對iOS其實還不懂的狀態,變成了一個入門者。

我 不但願這個文章能夠一句一句的幫你學會iOS是什麼,這個文章的目的是幫你快速入門。一旦你入門了,你再遇到問題該看什麼,你就不須要我講了,你本身就知 道了。一旦入門了,你就會發現,Xcode裏面別的文檔講的內容雖然不一樣,可是結構你已經很清楚了,你學習起來很方便。

閱讀本文的目的和檢測標準是,遇到問題,知道看什麼文檔,想提高本身技術的時候,知道按照什麼脈絡本身組織閱讀。

如何查詢文檔

Quick Help

最快捷的查詢幫助文檔的方法是不須要鍵入任何關鍵詞的。你只須要在Xcode代碼編輯器裏,按住Option鍵,而後點擊你想查詢的關鍵詞,就會得到關鍵詞的幫助信息。以下圖:

image

幫助信息會包括,一些簡單的描述、哪一個iOS操做系統開始提供,頭文件,參考文檔。頭文件和參考文檔是能夠直接點擊的。

即便你點擊的關鍵字不是Cocoa庫的內容,是本身代碼裏面的類或者方法,也能夠得到相關的定義信息。以下圖:

image

與之相關的熱鍵是Command鍵加鼠標點擊,便可跳到任何一個類名或者方法名的所定義的頭文件。

快速查詢幫助的另一個方法是直接打開Quick Help欄,以下圖,首先找到「右側欄開關」,而後找到「Quick Help」開關便可打開。

image

Quick Help欄的做用機制是,只要它在打開狀態,只要輸入光標在什麼關鍵字上,Quick Help欄就會顯示跟關鍵字相關的簡要幫助信息,跟Option鍵加點擊的信息基本一致,但可能略微豐富一點。

寫代碼的時候,在大多數狀況下,查詢下快速幫助,看看頭文件,就足以了。

搜索幫助

文檔閱讀界面最左面的上端的放大鏡按鈕就是搜索界面。下圖是咱們搜索uiimage,獲得的搜索結果。

image

首先值得注意的是,結果也是分類的,分爲Reference、System Guides、Tools Guides、Sample Code這四類。類別很利於咱們快速找到咱們須要的信息。前面已經介紹過類別,跟那個基本一致,參照便可。

另外須要注意的是,搜索框下面的選項,首先是Hits Must(什麼樣的結果纔會命中),包含了三項:

  1. contain search term 這是最多見的就是結果包含搜索詞
  2. start with search term 由搜索詞開始
  3. match search term 必須徹底匹配搜索詞

而後是Languages(語言選項),包含Javascript、C++、Java、Objective-C、C語言。

而後是,Find in(在哪些文檔庫搜索),包含了你Xcode裏面安裝的所有文檔庫。

閱讀文檔

最後,咱們簡單介紹下怎麼閱讀文檔。文檔的閱讀界面以下圖:

image

 

值得注意的是,標題下面這幾樣:

  1. Inherits from 繼承關係,繼承自
  2. Conforms to 遵循什麼協議
  3. Framework 屬於什麼框架
  4. Availability 從什麼iOS版本開始支持
  5. Declared in 頭文件
  6. Related sample code 相關例子代碼
  7. Companion guide 相關的指南(UIImage沒有,不少其餘的類有)

在其次一個很重要的東西,實際上是標題上面那一條窄窄的導航欄,那是一個多層樹狀導航欄,看文檔的時候,能夠點擊那個欄的不一樣位置瀏覽。

其實這個欄包含了整個文檔庫的組織結構樹狀圖,惋惜只有在這個界面才能瀏覽。有興趣的能夠慢慢瀏覽,裏面信息量其實很是大。

 

原文鏈接:

相關文章
相關標籤/搜索