IOS蘋果Xcode協助文檔閱讀指南

來源:互聯網
上載者:User

IOS蘋果Xcode協助文檔閱讀指南

 

  一直想寫這麼一個東西,長期以來我發現很多初學者的問題在於不掌握學習的方法,所以,Xcode那麼好的SDK文檔擺在那裡,對他們也起不到什麼太大的作用。從論壇、微博等等地方看到的初學者提出的問題,也暴露出他們不知道很多他們的疑惑其實在文檔裡面寫的非常清楚。而有時候當他們想從文檔去找解決方案的時候,也往往找不到。或者有些人意識到了,閱讀文檔是學習的好辦法,但是不得要領。

  中國的技術社區有一個很沒意思的毛病,就是技術深了,看不懂罵不知所云,技術淺了,看得懂罵沒有技術含量。不過管那麼孫子做啥,對於現在可能還不知道怎麼閱讀文檔的人,希望這篇文章有所教益吧。

  Xcode文檔的結構

  

 

  如,開啟後,整個文檔介面有左面的側欄和右面的內容地區構成。左面的側欄可以選擇不同的文件庫。你的Xcode裡面一般來說有一組不同版本的iOS文件庫、一組不同版本的OS X文件庫,以及一個Xcode文件庫。

  如果你這裡沒有你要查看的文件庫,你可以選擇Xcode的Preferences菜單,然後選擇Downloads -> Documentation。在這裡可以看到已經下載安裝了的文件庫,還沒有下載的文件庫,可以酌情選擇。如:

  

 

  然後我們看,文檔內容地區的左側導航地區,這裡揭示了文件庫的結構。如:

  

 

  首先是,Resource Types,也就是資源類型。文件庫裡面全部的文檔都是這幾個類型中的一個:

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

  總結一下,這裡面的Reference、Release Notes、Sample Code、Technical Notes、Technical Q&A,一般來說只是備查的。主要要看的是Getting Started和Guides。

  然後下面是Topics,也就是話題,被分為:

  Audio & Video —— 音視頻Languages & Utilities —— 語言和工具,Objective-C的一些知識,App Store的管理工具等。Mathematical Computation —— 數學計算。XcodeData Management —— 資料管理。General —— 一般性的問題。Graphics & Animation —— 圖形和動畫。Networking & Internet —— 網路問題。Performance —— 效能。Security —— 安全。User Experience —— 使用者體驗。

  這裡不多說,大多數都是顧名思義的問題。但是值得一提的就是有很多初學者說,我想好好瞭解形和動畫的技術,但是文檔裡面找不到,這就只能說,你睜著大大的眼睛,為毛左看右看看不到呢?

  最下面是Frameworks(架構),分為:

  Cocoa Touch Layer Media LayerCore Services LayerCore OS Layer

  這裡我們先不討論這個東西,後面會仔細講。

  總體來說左邊的導航地區就是用三種不同的維度,來幫你精準定位你需要的內容。

  現在我們看內容地區的右邊。注意上面的文檔過濾器。如:

  

 

  假設,你現在想看關於效能方面的Guides,那麼你應該做的就是在左面的導航,點擊Topics -> Performance,然後在右邊的文檔過濾器上面輸入Guides。或者你也可以在左邊的導航,點擊 Resource Types -> Guides,然後在文檔過濾器裡面輸入 Performance。

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

  文檔蘋果Apple閱讀

  猜你喜歡:蘋果Xcode協助文檔閱讀指南

  共149條回複 回複 樓長

 

  tinyfool 回複於 2013年08月21日 | 更新於 2月前

  文檔導讀

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

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

  讀取順序:

  《馬上著手開發 iOS 應用程式 (Start Developing iOS Apps Today)》《Your First iOS App》《Your Second iOS App: Storyboards》《Your Third iOS App: iCloud》《iOS Technology Overview》《iOS Human Interface Guidelines》《Learning Objective-C: A Primer》和《Programming with Objective-C》《iOS App Programming Guide》《View Programming Guide for iOS》和《View Controller Programming Guide for iOS》《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裡面別的文檔講的內容雖然不同,但是結構你已經很清楚了,你學習起來很方便。

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

  回複2樓

 

  tinyfool 回複於 2013年08月21日 | 更新於 2月前

  如何查詢文檔

  Quick Help

  最快捷的查詢協助文檔的方法是不需要鍵入任何關鍵詞的。你只需要在Xcode代碼編輯器裡,按住Option鍵,然後點擊你想查詢的關鍵詞,就會獲得關鍵詞的協助資訊。如:

  

 

  協助資訊會包括,一些簡單的描述、哪個iOS作業系統開始提供,標頭檔,參考文檔。標頭檔和參考文檔是可以直接點擊的。

  即使你點擊的關鍵字不是Cocoa庫的內容,是自己代碼裡面的類或者方法,也可以獲得相關的定義資訊。如:

  

 

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

  快速查詢協助的另外一個方法是直接開啟Quick Help欄,如,首先找到“右側欄開關”,然後找到“Quick Help”開關即可開啟。

  

 

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

  寫代碼的時候,在大多數情況下,查詢下快速協助,看看標頭檔,就足以了。

  搜尋協助

  文檔閱讀介面最左面的上端的放大鏡按鈕就是搜尋介面。是我們搜尋uiimage,得到的搜尋結果。

  

 

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

  另外需要注意的是,搜尋方塊下面的選項,首先是Hits Must(什麼樣的結果才會命中),包含了三項:

  contain search term 這是最常見的就是結果包含搜尋字詞start with search term 由搜尋字詞開始match search term 必須完全符合搜尋字詞

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

  然後是,Find in(在哪些文件庫搜尋),包含了你Xcode裡面安裝的全部文件庫。

  閱讀文檔

  最後,我們簡單介紹下怎麼閱讀文檔。文檔的閱讀介面如:

  

 

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

  Inherits from 繼承關係,繼承自Conforms to 遵循什麼協議Framework 屬於什麼架構Availability 從什麼iOS版本開始支援Declared in 標頭檔Related sample code 相關例子代碼Companion guide 相關的指南(UIImage沒有,很多其他的類有)

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

  其實這個欄包含了整個文件庫的組織圖樹狀圖,可惜只有在這個介面才能瀏覽。有興趣的可以慢慢瀏覽,裡面資訊量其實非常大。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.