Swift 3要來了,我們該如何是好 ?

彼得潘的 iOS App Neverland
5 min readMay 14, 2016

--

最近網路上瘋狂討論即將在年底推出的Swift 3,有人開心到睡不著,也有人傷心到吃不下,更有許多朋友緊張地詢問彼得潘相關問題。因此彼得潘想透過這篇文章解答一些問題,希望大家像每年Christmas期待聖誕老公公送來禮物一樣,期待年底Apple送給我們的Swift 3大禮。

  1. Swift不斷改版,語法一直改變,不如等它穩定後再學習 ?

目前 Swift的正式版本是2.2版,Apple即將在年底推出3.0版。雖然3.0版的確有了一些改動,但都是為了讓 Swift 更好,幫助我們更容易學習,更方便開發 App 的改變。這些改變並不會成為我們學習的阻礙,因為 Swift 主要的核心精神和概念並沒有變,只要學會了 Swift 2.2,未來想要學習3.0,4.0都能秒殺上手。

2. 現在以Swift 2開發的App,等到Swift 3推出時需要整個大改 ? 需要整個月加班 ?

不用太擔心,開發工具 Xcode 早已貼心地提供自動轉換的功能,幫助我們快速升級轉換。如下圖所示,點選Edit -> Convert -> To Latest Swift Syntx即可轉換,可說是踏破鐵鞋無覓處,得來全不費功夫 !

當然,還是會有少部分的語法轉換需手動調整,不過這部分其實不會花太多時間,正常情況下,大概兩三天之內即可完成轉換。

3. 那麼多次的iOS改版我們都平安度過了,Swift改版算什麼 !

Apple每年都會推出新的iOS,其實這才是App改版最花時間的地方。新的iOS 往往會造成一些從前開發的App功能或畫面發生不正常的現象。因此每年當使用者高興地迎接新的iPhone和iOS時,卻也是開發者忙著改版App,一天三杯咖啡,星巴克生意最好的時候。因此Swift的改版根本沒什麼好怕的,那麼多次的iOS改版我們都平安度過了。

4. 當Swift 3推出時,會不會對以Swift 2開發上架的App造成影響 ?

完全不用擔心。Swift 3推出時,並不會世界末日,原本已經上架的Swift 2 App或Objective-C App依然可以活得好好的。

5. 當Swift 3推出時,可以繼續用Swift 2開發App嗎 ?

短時間內可以。如果繼續採用舊版的Xcode,即可搭配舊版的Swift開發。Apple不會那麼殘忍,他會給我們一段繼續和舊情人相處,繼續使用舊版Xcode製作App上架的時間,不過時間是有期限的,總有一天我們要分手,需要變心使用新版Xcode,才能再繼續送審新的App。

一旦你狠心拋棄了舊版Xcode,安裝了新版Xcode,正常情況下只能搭配新版的Swift開發。不過也是有例外,你可以另外安裝不同版本的Swift,如此即可如下圖所示,手動設定搭配的Swift版本

6. Swift 2已經夠好了,不想再花時間學習Swift 3 ?

Swift是少數我們可以肯定,新的一定比舊的好,它將幫助我們更容易學習,更容易開發App。(像電影和談戀愛就不一定,新的不見得比舊的好。)

7. Swift 3推出後,Objective-C會不會被淘汰 ?

重感情的Apple,短時間內應該還是會繼續支援Objective-C,不過彼得潘還是建議,最好儘早開始學習Swift,畢竟未來Swift只會愈來愈重要,而且在學習的路上,不管是書籍,課程或網路上的文章,幾乎新的App開發技術都以Swift做範例,不懂Swift將無法看懂這些新技術的教學。

8. Swift 3會有哪些改變 ? 能不能提早開始準備 ?

可以的 ! 因為Swift Open Source的關係,關於它的一舉一動,未來改版的任何消息,都已被攤在陽光下,被看得一清二楚。在Swift 3正式版推出前,有興趣的開發者都可從Swift的官網查詢3.0版的改動,也可以下載3.0測試版的Developer Previews,搶先一睹Swift 3的風采 ! 彼得潘也會定期在網路上補充關於3.0的改變,比方swift程式設計入門外傳補充包

還在十字路口徘徊, 不知道該不該開始學習Swift嗎 ? 別等了,就像談戀愛一樣,一直等待最好的告白時機,結局只會是被學長追走一樣。現在就開始,才能早日成為十年經驗的偉大Swift工程師呀 !

ps: 有興趣學習Swift 3的朋友,也歡迎參考彼得潘在暑假推出的新課程

  1. 彼得潘的iOS App程式設計入門
    2016/6/20 ~ 2016/8/11,適合有程式基礎的學生。
  2. 文組生的iOS App程式設計入門
    2016/7/6 ~ 2016/9/7,適合無程式基礎的學生。

--

--

彼得潘的 iOS App Neverland
彼得潘的 iOS App Neverland

Written by 彼得潘的 iOS App Neverland

彼得潘的 Swift iOS App 程式設計入門,文組生的 Swift iOS App 程式設計入門,彼得潘的 Flutter 跨平台 App 程式設計入門講師,彼得潘的 Swift 程式設計入門,App程式設計入門作者,http://apppeterpan.strikingly.com

No responses yet