原文出處:Swift3 Migration Guide – Udacity
下載Xcode測試版
在正式版發行之前,可在Apple的開發者網站找到測試版的Xcode進行下載:https://developer.apple.com/download/
安裝完之後,在你的電腦中,會同時存在原本的Xcode 正式版與剛下載好的測試版。而在開啟專案時,可透過滑鼠右鍵->打開檔案的應用程式 -> 來選擇正式版或是測試版開啟
*請注意,在安裝了測試版之後,系統可能會將測試版直接設定為預設值
使用轉換精靈
當你用新版的Xocde開啟之前的專案時,當Xcode偵測到你的程式碼是使用舊版的Swift時,會自動出現轉換畫面:
按下Convert後,會出現三個選擇:
- 轉換至Swift3:最合理的選擇
- 轉換至Swift 2.3:再撐一下,但遲早要換的
- 暫不轉換:多了這個選項還不錯,在不小心開了很重要而且還沒備份的專案時可以選這個
接著Xcode會問你要選擇哪些targets來轉換,如果只有一個就直接繼續按下Next
接著你會看到自動轉換的部分,有蠻多不是自己寫的地方也自動轉換了:
自己寫的部分也轉換了,幾乎都是大小寫、方法名稱等為了讓程式更”Swifty”的改變:
按下儲存後,還是會看到一些警告,是關於效能方面的更新,也只能跟著按下更新了:
此時你的專案應已順利轉換成Swift3,趕快執行看看:
當然,這個轉換精靈也不是完美的,有些狀況你還是必須手動來調整,目前已知的有:
在if-let句子中的where改成逗號
若你的程式中有這樣的where關鍵字,限定if-let並且在某些狀況下要做什麼時,必須調整為逗號(,):
改為逗號:
enum case中的字改為小寫
不論是舊的Swift專案,或是開新專案撰寫時,也都蠻常會遇到被要求調整,Build時大多數都可以得到建議,萬一還是不行時,就得到官網看看最新的語法了。
延伸閱讀:
- Swift Migration Guide (英文)
- Swift 3:你要知道的新特色和改動 (中文)
相關課程: