iOS Xcode全面剖析
鏈接:http://www.jianshu.com/p/3c8527898e84
一、創(chuàng)建新一個(gè)工程
二、Xcode界面詳細(xì)介紹
三、Xcode菜單詳解
四、Xcode快捷鍵介紹
五、結(jié)語(yǔ)
六、參考資料
前言
前幾天在公司內(nèi)部做了一次關(guān)于iOS的入門分享,聽眾有PHP、Web、Android、測(cè)試、產(chǎn)品、UI等,主旨是力求不懂iOS的人能了解iOS的開發(fā)流程,聽后都能創(chuàng)建一個(gè)iOS項(xiàng)目并打印HelloWorld。(這是背景)
你想想就這么點(diǎn)需求,沒啥東西吧,又因?yàn)樽罱?xiàng)目還特別忙就什么也沒有準(zhǔn)備,以至于分享中就有了一些小尷尬::>_<::
總結(jié)下來,像聽眾有技術(shù)和非技術(shù)這樣而且是不懂iOS得其實(shí)是最難兼顧的,不準(zhǔn)備還不是等死。。。
當(dāng)然最大的感受還是自己掌握的iOS基礎(chǔ)太渣,對(duì)于一個(gè)沒有接觸過iOS的技術(shù)或非技術(shù),視角不一樣看到的東西就不一樣,他會(huì)對(duì)所有的東西都好奇都想知道是怎么回事,所以他會(huì)問一些iOS開發(fā)中不重要但是確實(shí)是屬于iOS的問題,?so隨著分享的深入什么設(shè)計(jì)模式MVVM、runtime、亂七八糟的都講了,但也掩蓋不了自己基礎(chǔ)的薄弱,所以近期打算重新梳理一下自己的iOS知識(shí)體系,把自以為自己懂得的知識(shí)好好總結(jié),用博客的形式表現(xiàn)出來,畢竟寫博客是最能檢驗(yàn)一個(gè)人知識(shí)鞏固好壞的方法了,最近一段時(shí)間一直在寫PHP、JS等方向的分享,是時(shí)候回歸一下本職了,希望能幫助自己鞏固基礎(chǔ)更希望能幫助跟我一樣基礎(chǔ)不是那么牢固的童鞋們!
一、創(chuàng)建新一個(gè)工程
Xcode一直沒有升級(jí)%>_<%,目前最新版本是Xcode7.3了,但本篇依據(jù)的是我目前使用的Xcode7.1.1,不過區(qū)別也不會(huì)很大的。
1、第一步打開Xcode,找到Xcode程序圖標(biāo)并點(diǎn)擊
2、如下界面,我們點(diǎn)擊新建一個(gè)項(xiàng)目,即第二項(xiàng)
1、Get started with a playground
Playground是蘋果公司在2014年WWDC(蘋果開發(fā)者大會(huì))隨Swift一起推出的,可以實(shí)現(xiàn)一邊寫代碼,一邊預(yù)覽效果(即實(shí)時(shí)預(yù)覽代碼的效果)的工具。
相對(duì)于以前寫代碼要經(jīng)過Build→Run漫長(zhǎng)的等待才能看到代碼的效果來說,Playground給程序員帶來的方便不言而喻。
Playground的不足之處是:無法直接將Playground文件直接用到工程中,暫時(shí)不支持Objective-C 。
我們開發(fā)者可以利用Playground來快速測(cè)試一些代碼和效果。
2、Create a new Xcode project
創(chuàng)建一個(gè)新的Xcode項(xiàng)目,一般正式的項(xiàng)目都是從此選項(xiàng)開始的。
3、Check out an existing project
打開一個(gè)已經(jīng)存在的項(xiàng)目
3、選擇一個(gè)項(xiàng)目模板創(chuàng)建,如下,圖中已經(jīng)標(biāo)出不同,并點(diǎn)擊Next
左側(cè)欄:
左側(cè)欄中四個(gè)分類分別代表了手機(jī)/pad、手表、電視、及PC端的開發(fā)選項(xiàng),就是一款Xcode足可以開發(fā)蘋果所有產(chǎn)品線中的所有軟件,是不是特別叼?
Application:即創(chuàng)建一個(gè)完整的項(xiàng)目。
Framework & Library:即寫一個(gè)框架或者庫(kù)(這個(gè)初學(xué)者用不到,但是等入門之后會(huì)發(fā)現(xiàn)這個(gè)很有用的,具體不在闡述,這可以再引申出一大篇文章了)
右側(cè)詳細(xì):
各種預(yù)定義的模板,具體可從圖中顯示看出各個(gè)模板的樣式,一般而言項(xiàng)目會(huì)選擇最簡(jiǎn)單的即第三個(gè)模板。
4、填寫并選擇一些所創(chuàng)建項(xiàng)目的信息,如下并點(diǎn)擊Next
1、Product Name
項(xiàng)目名稱,比如本例中名稱就是XcodeIntroduction(駝峰式命名)
2、Organization Name
組織或公司的名稱,目前是王隆帥(本人^_^),可隨便寫。
3、Organization Identifier
組織或名稱的標(biāo)識(shí),目前是本人所在的公司,可隨便寫。
4、Bundle Identifier
程序包標(biāo)識(shí),新建項(xiàng)目時(shí)是根據(jù)你創(chuàng)建的項(xiàng)目名稱自動(dòng)生成的不可更改,可在內(nèi)部修改。
5、Language
開發(fā)語(yǔ)言選擇,目前Xcode提供Objective-C、Swift兩個(gè)選擇,這里選擇OC。
6、User Core Data
是否使用CoreData,iOS開發(fā)常用的一種數(shù)據(jù)庫(kù)。
7、Include Unit Tests
是否添加模塊單元測(cè)試Target
8、Include UI Tests
是否添加UI單元測(cè)試Target
5、選擇路徑創(chuàng)建項(xiàng)目,如下圖,選擇桌面,并點(diǎn)擊Create。
1、create Git repository on My Mac
是否創(chuàng)建版本控制系統(tǒng),創(chuàng)建的話可以選擇是在本地還是在服務(wù)器。版本控制系統(tǒng),或者說修改控制系統(tǒng),實(shí)際上是一種檢測(cè)源文件的改變并將其保存留作以后參考使用的機(jī)制(軟件)。此外,它還能記錄其他有用信息,比如是哪個(gè)開發(fā)者修改了代碼,何時(shí)修改的,修改了哪一部分,以及其他歷史信息。版本控制系統(tǒng)可以比較不同版本代碼的不同,有必要時(shí)能恢復(fù)整個(gè)項(xiàng)目到以前的版本,追蹤有害代碼從而減少產(chǎn)品的錯(cuò)誤。
通過版本控制系統(tǒng),開發(fā)者可以在一個(gè)項(xiàng)目的不同分支上工作,當(dāng)項(xiàng)目的各個(gè)部分開發(fā)完備時(shí),將它們放到一起形成最終的版本,這個(gè)過程被稱為合并。事實(shí)上,這種做法再團(tuán)隊(duì)和軟件公司中相當(dāng)常見:每個(gè)人負(fù)責(zé)項(xiàng)目的一部分,最終所有部分被整合到一起形成最終產(chǎn)品。
6、創(chuàng)建成功后的界面如下
此界面就是Xcode的主界面了,接下來,會(huì)帶你一點(diǎn)點(diǎn)揭開Xcode神秘的面紗,66666。
二、Xcode界面詳細(xì)介紹
五大區(qū)域介紹,如下圖
1、 第一部分:頂部區(qū)域
① 程序運(yùn)行相關(guān):
從左至右依次:運(yùn)行按鈕、?停止按鈕、?為工程選擇運(yùn)行平臺(tái)。
② 編輯器相關(guān):
從左至右依次:標(biāo)準(zhǔn)編輯器、?輔助編輯器、?版本編輯器。
③ 面板控制相關(guān):
從左至右依次:隱藏(顯示)左側(cè)面板、?隱藏(顯示)底部面板、?隱藏(顯示)右側(cè)面板。
2、第二部分:左面版
該面板是 Xcode 工程導(dǎo)航面板, 上方的八個(gè)按鈕用于切換導(dǎo)航模式。從左至右 :?項(xiàng)目導(dǎo)航、符號(hào)導(dǎo)航、 搜索導(dǎo)航、 問題導(dǎo)航、 測(cè)試導(dǎo)航、 調(diào)試導(dǎo)航、 斷點(diǎn)導(dǎo)航、 日志導(dǎo)航。
① 項(xiàng)目導(dǎo)航
項(xiàng)目導(dǎo)航組成 :?
源文件 :?在 XcodeIntroduction 目錄下的 ".h" 和 ".m" 后綴文件是源文件;
屬性文件 :?在 XcodeIntroduction 下的 Supporting Files 目錄下是屬性文件 圖片等;
單元測(cè)試項(xiàng)目 :?XcodeIntroductionTests、XcodeIntroductionUITests 是工程的單元測(cè)試項(xiàng)目;
目標(biāo)應(yīng)用 :?Products 目錄下的 XcodeIntroductionTests.app 是目標(biāo)應(yīng)用;
② 符號(hào)導(dǎo)航
符號(hào)導(dǎo)航簡(jiǎn)介 : 用符號(hào)顯示工程中的 類, 項(xiàng)目 和 屬性;
表示方式 :?C 表示類, M 表示方法, P 表示屬性;
快速定位 :?點(diǎn)擊對(duì)應(yīng)的方法或者屬性, 能快速定位到這個(gè)類中;
③ 搜索導(dǎo)航
在搜索框中輸入要搜索的字符串, 按回車就可以搜索出包含該字符串的類;
④ 問題導(dǎo)航
顯示項(xiàng)目中存在的警告或者錯(cuò)誤;
⑤ 測(cè)試導(dǎo)航
點(diǎn)擊 testExample 后面的執(zhí)行按鈕, 就會(huì)運(yùn)行該單元測(cè)試;
⑥ 調(diào)試導(dǎo)航
調(diào)試導(dǎo)航面板中顯示了各線程的詳細(xì)信息;
⑦ 斷點(diǎn)導(dǎo)航
列出所有的斷點(diǎn), 方便管理斷點(diǎn)
⑧ 日志導(dǎo)航
列出項(xiàng)目開發(fā)過程中構(gòu)建、生成、運(yùn)行過程,每次該過程都可以通過日志面板查看
3、第三部分:調(diào)試面板
用于 Xcode 顯示 控制臺(tái)調(diào)試輸出信息。
① 添加斷點(diǎn)
如上圖,在第20行打印“王隆帥的簡(jiǎn)書”代碼上添加一個(gè)斷點(diǎn)。
② 開始調(diào)試(自動(dòng)判斷)
點(diǎn)擊頂部面板中的調(diào)試按鈕, 如果代碼中有斷點(diǎn), 就會(huì)自動(dòng)進(jìn)入調(diào)試狀態(tài), 執(zhí)行到斷點(diǎn)時(shí)會(huì)自動(dòng)停止, 詳細(xì)調(diào)試信息顯示在底部的調(diào)試輸出面板;
③ 調(diào)試面板按鈕介紹(上圖紅框中從左至右)
1、Continue program execution :?繼續(xù)執(zhí)行下面的代碼;
2、Step over :?單步調(diào)試, 點(diǎn)擊一次該按鈕, 執(zhí)行一行代碼, 如果有方法調(diào)用, 不會(huì)進(jìn)入方法中;
3、Strp in :?步入調(diào)試, 點(diǎn)擊該按鈕, 會(huì)進(jìn)入方法中;
4、Step out :?步出調(diào)試, 在方法中, 點(diǎn)擊該按鈕, 會(huì)退出方法, 執(zhí)行方法外的單步調(diào)試;
5、點(diǎn)擊會(huì)出現(xiàn)此時(shí)項(xiàng)目的視圖層次結(jié)構(gòu)
6、點(diǎn)擊會(huì)讓你選擇你的地理位置
4、第四部分:右面板
包括兩個(gè)部分上側(cè)的檢查器面板和下側(cè)的庫(kù)面板。
① 檢查器面板
檢查面板分類 :
普通源文件 :?包含?文件檢查器?和?快速幫助器;
故事版 :?界面文件, 除了文件檢查器?和?快速幫助器之外, 還有?身份檢查器,?屬性檢查器,?大小檢查器,?連接檢查器;
1)文件檢查器
Identity and Type :?File Name(文件名), File Type(文件類型), Full Path(路徑);
Text Settings :?Text Encoding(文件編碼使用字符集), Indent Using(縮進(jìn)), Wrap lines(自動(dòng)換行);
2)快速幫助器
界面設(shè)計(jì)相關(guān)檢查器
用戶選中 ".storyboard" 或者 ".xib" 后綴的文件時(shí), 會(huì)多出另外四個(gè)檢查器;
3)身份檢查器
管理界面組件類 實(shí)現(xiàn)類, 恢復(fù)ID 等標(biāo)識(shí)性的屬性;
4)屬性檢查器
管理界面組件 拉伸方式, 背景色 等屬性;
5)大小檢查器
管理界面組件 寬高 xy軸坐標(biāo) 等屬性;
6)連接檢查器
:?
管理界面組件 與程序代碼之間的關(guān)聯(lián)性;
② 庫(kù)面板(從左至右)
項(xiàng)目的各種庫(kù)文件,方便查找使用。
1)文件模板庫(kù)
管理文件模板, 可以快速創(chuàng)建指定類型文件, 可以直接拖入項(xiàng)目中;
2)代碼片段庫(kù)
管理各種代碼片段, 可以直接拖入源代碼中;
3)對(duì)象庫(kù)
界面組件, 可以直接拖入 故事板中;
4)媒體庫(kù)
管理各種 圖片, 音頻 等多媒體資源;
5、第五部分:詳細(xì)編碼區(qū)
該區(qū)域是代碼編寫的主要區(qū)域。
三、Xcode菜單詳解
四、Xcode快捷鍵介紹
Xcode中的快捷鍵確實(shí)會(huì)讓人眼花繚亂,在此只介紹主界面上按鈕點(diǎn)擊的快捷鍵(有很強(qiáng)的記憶規(guī)律),代碼相關(guān)、運(yùn)行相關(guān)的代碼可以看這里,這里面的道道還是很多的Y^o^Y?
1、第一個(gè)需要知道的是Xcode的各區(qū)域與修飾鍵的關(guān)系,下面是一個(gè)快速瀏覽
Command:用來導(dǎo)航,控制導(dǎo)航區(qū)域
Alt:控制右邊的一些東西,比如Assistant Editor,utility editor
Control:編輯區(qū)域上的Jump bar的一些交互
如下圖
下面是最常用的組合鍵:
Command 1~ 8:?跳轉(zhuǎn)到導(dǎo)航區(qū)的不同位置
Command 0 :顯示/隱藏導(dǎo)航區(qū)
Command Alt 1~ 6:在不同檢測(cè)器之間跳轉(zhuǎn)
Command Alt 0:?顯示/關(guān)閉工具區(qū).
Control Command Alt 1~4:?在不同庫(kù)之間跳轉(zhuǎn)
Control 1~ 6:?在Jump bar的不同標(biāo)簽頁(yè)的跳轉(zhuǎn)。
最后也是最簡(jiǎn)單的就是回車鍵,當(dāng)它和Command組合使用時(shí),可以是你在Xcode中不同編輯器來回切換。
Command + Enter:?顯示標(biāo)準(zhǔn)單窗口編輯器
Command Alt Enter:你可以猜下它的作用,它的功能是打開Assistant editor
Command Alt Shift Enter:?打開版本控制編輯器
同樣重要的是顯示/隱藏調(diào)試區(qū)的快捷鍵是?Command + Shift + Y?,要記住這個(gè)你可以通過這句話來記憶 “Y is my code not working?” (譯者注:Y諧音Why)。
如果你忘記了一些快捷鍵,你可以在Xcode的菜單欄Navigate一項(xiàng)中找到大部分快捷鍵。在即將完成這一部分的學(xué)習(xí)之時(shí),你會(huì)驚奇的發(fā)現(xiàn)你僅僅只是用了鍵盤就讓Xcode發(fā)生這各種變換。
五、結(jié)語(yǔ)
工欲善其事必先利其器, Xcode如此叼, 掌握了它, iOS還不隨你玩!目前最新的版本為Xcode7.3, 提醒大家, 謹(jǐn)慎升級(jí), 根據(jù)認(rèn)識(shí)朋友的升級(jí)感受, 目測(cè)比較坑, 尤其是自動(dòng)補(bǔ)全機(jī)制, 升級(jí)前可自行谷歌先行者的感受...( ⊙o⊙ )千真萬(wàn)確。
六、參考資料
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
?
轉(zhuǎn)載于:https://www.cnblogs.com/GJ-ios/p/6483060.html
總結(jié)
以上是生活随笔為你收集整理的iOS Xcode全面剖析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 你们肯定都不相信每天能准时下班了
- 下一篇: 温故而知新 小测试