iOS Xcode全面剖析

 

 

前言

前幾天在公司內部作了一次關於iOS的入門分享,聽衆有PHP、Web、Android、測試、產品、UI等,主旨是力求不懂iOS的人能瞭解iOS的開發流程,聽後都能建立一個iOS項目並打印HelloWorld。(這是背景)
你想一想就這麼點需求,沒啥東西吧,又由於最近項目還特別忙就什麼也沒有準備,以致於分享中就有了一些小尷尬::>_<::
總結下來,像聽衆有技術和非技術這樣並且是不懂iOS得實際上是最難兼顧的,不許備還不是等死。。。html

固然最大的感覺仍是本身掌握的iOS基礎太渣,對於一個沒有接觸過iOS的技術或非技術,視角不同看到的東西就不同,他會對全部的東西都好奇都想知道是怎麼回事,因此他會問一些iOS開發中不重要可是確實是屬於iOS的問題,so隨着分享的深刻什麼設計模式MVVM、runtime、亂七八糟的都講了,但也掩蓋不了本身基礎的薄弱,因此近期打算從新梳理一下本身的iOS知識體系,把自覺得本身懂得的知識好好總結,用博客的形式表現出來,畢竟寫博客是最能檢驗一我的知識鞏固好壞的方法了,最近一段時間一直在寫PHP、JS等方向的分享,是時候迴歸一下本職了,但願能幫助本身鞏固基礎更但願能幫助跟我同樣基礎不是那麼牢固的童鞋們ios

1、建立新一個工程

Xcode一直沒有升級%>_<%,目前最新版本是Xcode7.3了,但本篇依據的是我目前使用的Xcode7.1.1,不過區別也不會很大的。程序員

一、第一步打開Xcode,找到Xcode程序圖標並點擊

 
 

二、以下界面,咱們點擊新建一個項目,即第二項

 

 

 

 

一、Get started with a playground數據庫

Playground是蘋果公司在2014年WWDC(蘋果開發者大會)隨Swift一塊兒推出的,能夠實現一邊寫代碼,一邊預覽效果(即實時預覽代碼的效果)的工具。
相對於之前寫代碼要通過Build→Run漫長的等待才能看到代碼的效果來講,Playground給程序員帶來的方便不言而喻。
Playground的不足之處是:沒法直接將Playground文件直接用到工程中,暫時不支持Objective-C 。
咱們開發者能夠利用Playground來快速測試一些代碼和效果。設計模式

二、Create a new Xcode project服務器

建立一個新的Xcode項目,通常正式的項目都是今後選項開始的。app

三、Check out an existing project框架

打開一個已經存在的項目編輯器

三、選擇一個項目模板建立,以下,圖中已經標出不一樣,並點擊Next

 
 

左側欄:
左側欄中四個分類分別表明了手機/pad、手錶、電視、及PC端的開發選項,就是一款Xcode足能夠開發蘋果全部產品線中的全部軟件,是否是特別叼?
Application:即建立一個完整的項目。
Framework & Library:即寫一個框架或者庫(這個初學者用不到,可是等入門以後會發現這個頗有用的,具體不在闡述,這能夠再引伸出一大篇文章了)工具

右側詳細:
各類預約義的模板,具體可從圖中顯示看出各個模板的樣式,通常而言項目會選擇最簡單的即第三個模板。

 

四、填寫並選擇一些所建立項目的信息,以下並點擊Next

一、Product Name
項目名稱,好比本例中名稱就是XcodeIntroduction(駝峯式命名)

二、Organization Name
組織或公司的名稱,目前是王隆帥(本人_),可隨便寫。

三、Organization Identifier
組織或名稱的標識,目前是本人所在的公司,可隨便寫。

四、Bundle Identifier
程序包標識,新建項目時是根據你建立的項目名稱自動生成的不可更改,可在內部修改。

五、Language
開發語言選擇,目前Xcode提供Objective-C、Swift兩個選擇,這裏選擇OC。

六、User Core Data
是否使用CoreData,iOS開發經常使用的一種數據庫。

七、Include Unit Tests
是否添加模塊單元測試Target

八、Include UI Tests
是否添加UI單元測試Target

五、選擇路徑建立項目,以下圖,選擇桌面,並點擊Create。

 
 

一、create Git repository on My Mac

是否建立版本控制系統,建立的話能夠選擇是在本地仍是在服務器。版本控制系統,或者說修改控制系統,其實是一種檢測源文件的改變並將其保存留做之後參考使用的機制(軟件)。此外,它還能記錄其餘有用信息,好比是哪一個開發者修改了代碼,什麼時候修改的,修改了哪一部分,以及其餘歷史信息。版本控制系統能夠比較不一樣版本代碼的不一樣,有必要時能恢復整個項目到之前的版本,追蹤有害代碼從而減小產品的錯誤。
經過版本控制系統,開發者能夠在一個項目的不一樣分支上工做,當項目的各個部分開發完備時,將它們放到一塊兒造成最終的版本,這個過程被稱爲合併。事實上,這種作法再團隊和軟件公司中至關常見:每一個人負責項目的一部分,最終全部部分被整合到一塊兒造成最終產品。

六、建立成功後的界面以下

 
 

此界面就是Xcode的主界面了,接下來,會帶你一點點揭開Xcode神祕的面紗,66666。

2、Xcode界面詳細介紹

五大區域介紹,以下圖

 
 

一、 第一部分:頂部區域

 
 

① 程序運行相關:
從左至右依次:運行按鈕、中止按鈕、爲工程選擇運行平臺。

② 編輯器相關:
從左至右依次:標準編輯器、輔助編輯器、版本編輯器。

③ 面板控制相關:
從左至右依次:隱藏(顯示)左側面板、隱藏(顯示)底部面板、隱藏(顯示)右側面板。

二、第二部分:左面版
該面板是 Xcode 工程導航面板, 上方的八個按鈕用於切換導航模式。從左至右 : 項目導航、符號導航、 搜索導航、 問題導航、 測試導航、 調試導航、 斷點導航、 日誌導航。

① 項目導航

 
 

 

項目導航組成 :

源文件 :在 XcodeIntroduction 目錄下的 ".h" 和 ".m" 後綴文件是源文件;
屬性文件 :在 XcodeIntroduction 下的 Supporting Files 目錄下是屬性文件 圖片等;
單元測試項目 :XcodeIntroductionTests、XcodeIntroductionUITests 是工程的單元測試項目;
目標應用 :Products 目錄下的 XcodeIntroductionTests.app 是目標應用;

② 符號導航

 
 

 

符號導航簡介 : 用符號顯示工程中的 類, 項目 和 屬性;
表示方式 :C 表示類, M 表示方法, P 表示屬性;
快速定位 :點擊對應的方法或者屬性, 能快速定位到這個類中;

③ 搜索導航

 
 

 

在搜索框中輸入要搜索的字符串, 按回車就能夠搜索出包含該字符串的類;

④ 問題導航

 
 

 

顯示項目中存在的警告或者錯誤;

⑤ 測試導航

 
 

 

點擊 testExample 後面的執行按鈕, 就會運行該單元測試;

⑥ 調試導航

 
 

 

調試導航面板中顯示了各線程的詳細信息;

⑦ 斷點導航

 
 

 

列出全部的斷點, 方便管理斷點

⑧ 日誌導航

 
 

 

列出項目開發過程當中構建、生成、運行過程,每次該過程均可以經過日誌面板查看

三、第三部分:調試面板

 
 

 

用於 Xcode 顯示 控制檯調試輸出信息。

① 添加斷點
如上圖,在第20行打印「王隆帥的簡書」代碼上添加一個斷點。

② 開始調試(自動判斷)
點擊頂部面板中的調試按鈕, 若是代碼中有斷點, 就會自動進入調試狀態, 執行到斷點時會自動中止, 詳細調試信息顯示在底部的調試輸出面板;

③ 調試面板按鈕介紹(上圖紅框中從左至右)
一、Continue program execution :繼續執行下面的代碼;
二、Step over :單步調試, 點擊一次該按鈕, 執行一行代碼, 若是有方法調用, 不會進入方法中;
三、Strp in :步入調試, 點擊該按鈕, 會進入方法中;
四、Step out :步出調試, 在方法中, 點擊該按鈕, 會退出方法, 執行方法外的單步調試;
五、點擊會出現此時項目的視圖層次結構
六、點擊會讓你選擇你的地理位置

四、第四部分:右面板
包括兩個部分上側的檢查器面板和下側的庫面板。


① 檢查器面板

檢查面板分類 :
普通源文件 :包含 文件檢查器和 快速幫助器;
故事版 :界面文件, 除了文件檢查器和 快速幫助器以外, 還有 身份檢查器屬性檢查器大小檢查器鏈接檢查器;

1)文件檢查器

 
 

 

Identity and Type :File Name(文件名), File Type(文件類型), Full Path(路徑);
Text Settings :Text Encoding(文件編碼使用字符集), Indent Using(縮進), Wrap lines(自動換行);

2)快速幫助器

 
 

界面設計相關檢查器

 
 

用戶選中 ".storyboard" 或者 ".xib" 後綴的文件時, 會多出另外四個檢查器;

3)身份檢查器

 
 

管理界面組件類 實現類, 恢復ID 等標識性的屬性;

4)屬性檢查器

 
 

管理界面組件 拉伸方式, 背景色 等屬性;

5)大小檢查器

 
 

管理界面組件 寬高 xy軸座標 等屬性;

6)鏈接檢查器

 

 

:
 
 

管理界面組件 與程序代碼之間的關聯性;


② 庫面板(從左至右)

項目的各類庫文件,方便查找使用。

1)文件模板庫

 
 

管理文件模板, 能夠快速建立指定類型文件, 能夠直接拖入項目中;

2)代碼片斷庫

 
 

管理各類代碼片斷, 能夠直接拖入源代碼中;

3)對象庫

 
 

界面組件, 能夠直接拖入 故事板中;

4)媒體庫

 
 

管理各類 圖片, 音頻 等多媒體資源;


五、第五部分:詳細編碼區
該區域是代碼編寫的主要區域。

3、Xcode菜單詳解

 
 
 
  
 
 
 
 
 
 
 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4、Xcode快捷鍵介紹

Xcode中的快捷鍵確實會讓人眼花繚亂,在此只介紹主界面上按鈕點擊的快捷鍵(有很強的記憶規律),代碼相關、運行相關的代碼能夠看這裏,這裏面的道道仍是不少的YoY

一、第一個須要知道的是Xcode的各區域與修飾鍵的關係,下面是一個快速瀏覽

Command:用來導航,控制導航區域
Alt:控制右邊的一些東西,好比Assistant Editor,utility editor
Control:編輯區域上的Jump bar的一些交互

以下圖

 

 

 

 

下面是最經常使用的組合鍵:

Command 1~ 8:跳轉到導航區的不一樣位置
Command 0 :顯示/隱藏導航區
Command Alt 1~ 6:在不一樣檢測器之間跳轉
Command Alt 0:顯示/關閉工具區.
Control Command Alt 1~4:在不一樣庫之間跳轉
Control 1~ 6:在Jump bar的不一樣標籤頁的跳轉。

最後也是最簡單的就是回車鍵,當它和Command組合使用時,能夠是你在Xcode中不一樣編輯器來回切換。

Command + Enter:顯示標準單窗口編輯器
Command Alt Enter:你能夠猜下它的做用,它的功能是打開Assistant editor
Command Alt Shift Enter:打開版本控制編輯器

一樣重要的是顯示/隱藏調試區的快捷鍵是 Command + Shift + Y,要記住這個你能夠經過這句話來記憶 「Y is my code not working?」 (譯者注:Y諧音Why)。
若是你忘記了一些快捷鍵,你能夠在Xcode的菜單欄Navigate一項中找到大部分快捷鍵。在即將完成這一部分的學習之時,你會驚奇的發現你僅僅只是用了鍵盤就讓Xcode發生這各類變換。

5、結語

工欲善其事必先利其器, Xcode如此叼, 掌握了它, iOS還不隨你玩!目前最新的版本爲Xcode7.3, 提醒你們, 謹慎升級, 根據認識朋友的升級感覺, 目測比較坑, 尤爲是自動補全機制, 升級前可自行谷歌先行者的感覺...( ⊙o⊙ )千真萬確。

6、參考資料

http://www.360doc.com/content/15/0324/17/20918780_457719719.shtml
http://jingyan.baidu.com/article/4b07be3cb3c94048b380f3de.html
http://www.cocoachina.com/ios/20140524/8536.html
http://blog.csdn.net/shulianghan/article/details/38424965
http://www.jianshu.com/p/8bcdf44b6cf1
http://www.cocoachina.com/ios/20140731/9284.html

 

 



做者:王隆帥
連接:https://www.jianshu.com/p/3c8527898e84
來源:簡書
簡書著做權歸做者全部,任何形式的轉載都請聯繫做者得到受權並註明出處。

 

 

 

 

 

 

 

 

相關文章
相關標籤/搜索