iPhone至今已經(jīng)十周年了族淮,作為一個重要時間點凳干,今年Apple的WWDC17可謂是憋了大招了晴裹。iOS11(ARKit,ML)救赐、Swift4涧团、Xcode9。Xcode9相較之前的版本還是有很多實打?qū)嵉男鹿δ艿木酰壳癆ppStore已經(jīng)推送最新版少欺,為此本人寫一下個人體驗。
頭文件跳轉(zhuǎn)
頭文件跳轉(zhuǎn)發(fā)生了改變馋贤,Xcode9之前點擊類名直接跳轉(zhuǎn)到類頭文件里面赞别,現(xiàn)在成了actions了,
- Jump to Definition(^?):跳轉(zhuǎn)類頭文件或定義
- Show Quick Help(?):顯示幫助文檔
- Edit All in Scope:編輯文檔內(nèi)所有匹配內(nèi)容
- Extract Function: 抽取成函數(shù)
- Extract Method: 抽取成方法配乓,至于和上面功能有啥區(qū)別仿滔,趕快試一下會讓你喜歡上這兩個功能的
- Actions: 提供快速搜索三個功能惠毁,也許Apple認(rèn)為這樣改變確實不方便了,畢竟和我們預(yù)想頁面中間多了一步崎页。
不過有些小伙伴說了鞠绰,我雖然喜歡這個功能,但是我CMD+左擊 90%的情況是跳轉(zhuǎn)頭文件飒焦,這樣每次需要選擇豈不是很麻煩蜈膨,哈哈 別著急 有辦法
路徑是Xcode Preference -> Navigation -> Command-click on Code選項改成Jumps to Definition
錯誤
在Xcode9之前, 錯誤信息只會在錯誤處后面一行顯示牺荠,但是錯誤信息過多的時候翁巍,在看錯誤信息的時候難免有些不方便,現(xiàn)在好了休雌,當(dāng)點擊錯誤信息前面的紅點時灶壶,錯誤信息會完全展開,并且有fix功能杈曲。
代碼塊范圍
當(dāng)將光標(biāo)放在class驰凛、func、if担扑、for恰响、{}、()等關(guān)鍵字時涌献,按住command鍵渔隶,Xcode9將提示對應(yīng)的代碼塊范圍。當(dāng)點擊鼠標(biāo)時好會出現(xiàn)對應(yīng)的actions洁奈。例如:
點擊 Add "else" Statement
或者Add "else if" Statement
action的時候间唉,Xcode會自動給我們增加else分支內(nèi)容
厲害的來了,當(dāng)點擊Extract Method
的時候利术, Xcode會將分支自動抽取成func呈野, 手動對此功能點贊??呀!這以后抽取代碼塊的時候太方便了印叁。
New Group新變化
在Xcode9之前,我們在工程文件下New Group的時候,Xcode只會創(chuàng)建虛擬文件目錄(這點很痛苦), 還得自己手動創(chuàng)建本地實體文件目錄并關(guān)聯(lián)之. Xcode9之后New Group將會同步創(chuàng)建本地實體文件目錄. 如果還想像之前那樣只是建立虛擬的group,需要選擇New Group without Folder即可
Asset Catalogs
現(xiàn)在Assets.xcassets不光能增加圖片被冒,也能增加有名字的顏色
使用的時候類似引用圖片方式:
view.backgroundColor = UIColor(named: "color")
以后管理全局顏色就和管理圖片一樣一樣的啦 方便極了
Source Control
Xcode9對源代碼管理增加了很大的支持,在Preferences中的Source Control增加了Git和Subversion轮蜕。并且在左側(cè)的Navigator中可以很清楚明了的查看提交信息
在左側(cè)的Navigator中昨悼,有Branches、Tags跃洛、Remotes率触,這是相當(dāng)于集成了SourceTree集成進去了呀
在Accounts中可以增加GitHub賬戶
而且GitHub賬戶信息展示的也很齊全
更多的關(guān)于Source Control操作不在一一贅述,大家可以自己研究一下
兼容性
Xcode9之后支持了Swift4.0和Swift3.2汇竭,默認(rèn)使用的是Swift4.0葱蝗。你可以再target的Build Settings的Swift Language Version中選擇Swift版本穴张!
想當(dāng)年做Swift2到Swift3的轉(zhuǎn)換時,真是滿滿的淚呀两曼!
調(diào)試應(yīng)用
Simulator
Xcode9這次對Simulator進行了非常大的升級皂甘,特別是外觀發(fā)生了變化
最新的模擬器擬物化了,增加了Home鍵 左上的靜音和聲音鍵悼凑,右上的關(guān)機鍵都可以使用
模擬器大小也可以隨意調(diào)整大小偿枕,不像之前只有cmd+1、2户辫、3渐夸、4的尺寸,現(xiàn)在將光標(biāo)放在模擬器四角之一上就可以隨意調(diào)整模擬器大小了
現(xiàn)在可以運行多個模擬器寸莫,方便我們測試不同設(shè)備情況下頁面的情況捺萌,
真機調(diào)試
之前如若要真機調(diào)試必須要連接數(shù)據(jù)線档冬,現(xiàn)在方便了膘茎,可以通過WIFI無線安裝App了,
不過需要Xcode9并且運行iOS11+的版本才能使用酷誓,
還有就是Mac和iPhone必須連接同一個WiFi網(wǎng)絡(luò)披坏。
操作如下:
1.用數(shù)據(jù)線連接Mac和iPhone
2.選擇Xcode menu的Window -> Devices and Simulator
3.勾選Connect via network如果通過網(wǎng)絡(luò)成功連接到iPhone,就可以拔掉數(shù)據(jù)線愉快的進行無線真機調(diào)試
同時也可以通過輸入iPhone的IP進行連接盐数。
語言特性
之前判斷iOS版本需要獲取Device Version:[[UIDevice currentDevice] systemVersion] 現(xiàn)在判斷可以像Swift方式那樣簡單了
if (@available(iOS 11.0, *)) {
// iOS 11 Later
} else {
}
新的編譯系統(tǒng)
Apple提供了一套新的用純Swift編寫的編譯系統(tǒng),據(jù)說對編譯速度的提升幫助很大,目前并沒有成為默認(rèn).如果想要體驗,需要手動設(shè)置一下, File -> Workspace Settings即可更改
其他
按住command + +
或-
棒拂,可以將代碼放大或縮小, 這以后演示代碼就方便了不少
總結(jié)
關(guān)于Xcode9就簡單介紹這里玫氢,還有很多其他的新特性帚屉。作為十周年之際,Apple也是拿出了很大的誠意漾峡,更多的功能可在Xcode的Help-> Xcode Help中查找