2014年12月21日 星期日

也談談 Apple 的新開發語言 Swift

自從 Steve Jobs 重新加入 Apple 之後,這蘋果公司一出手總是讓人震驚與讚嘆。 今年 2014年 6 月 2 日蘋果在 WWDC 年度會議上宣告 Swift 語言正式誕生,這更讓蘋果迷既驚喜,又是擔憂。驚喜的是新語言擺脫舊有的包袱,但擔憂的是凡事又得重新另起 -- 除了架構 Framework Library 運用上沒有多大改變之外。

Swift 融合各家語言的優點,考慮安全性及效能,所以盲人摸象,每個人都可看到自己熟習的程式語言的影子。學習新的程式語言,其 Learning Curve 的長短不一。不過,誘使 Developer 願意跳火坑去學,倒不是語言的精簡良莠,反倒是學習之後,這語言能帶給 Developer 多少效益,即能從中獲取多少利益。 Swift 天生嬌貴,生來就有個富爸爸,所以就注定萬眾所矚。截至今年12月,在TOBIE的排名已躍升 17名。雖然遠遠落後排名第 3 的原開發語言 Objective-C,但在 Developer 心中都明白,Objective-C 將淡出,這只是時間問題。對新加入開發 iPhone / iPad 等 iDevice 的 Developer而言, Swift 會成為必要的首選。

Swift 提供一個很好的工具 Playground。這工具允許 Developer 寫些小程式測試欲新增到專案的概念,藉此立即得知結果。這對 Developer 而言相當有幫助。過去 Developer 大部分必須在專案裡直接寫 Code,才能測試結果。除此,Playground 這所得即所見的直接操作,讓學習 Swift 以及 iOS 所提供的 Library 更快速、更直接,加速 Developer 大膽假設、小心求證的時程。這工具將成為 Swift 教學上的利器。

Swift 簡潔的語句著實令人著迷。它除去一般程式語言繁瑣的限制,反倒是著重在程式的精神。例如:程式每個 statement 段落結尾在 C / Objective-C 非得要以分號 (;) 區隔,而 Swift 就人性化多了,無須有此記憶上的累贅。又例如:眾所皆知 Developer 被教育專案中第一個被執行的函式 function 是 main(),而 Swift 則認為只要 function 在 Global Scope,那執行就會由那點開始。 另外, Swift 的 function 解除了只能 return 一個值或一個物件的限制,而允許 return 多個值。 對 Swift 而言, function 可視為變數。這些亮點增加了開發程式的彈性。

該不該立即跟上這波 Swift 的列車? 跟吧! 若你是Mobil Device 的 Developer,你沒有不跟的權利。雖說 Android 是個選項,然而君不見有 Developer 能在 Android 平台上撈到油水錢嗎? 反倒是在 iOS 平台開發倒是出現不少小富翁。會有這樣的現象可能歸諸於 PC 使用者的餘孽,認為甚麼都是免費的,要錢的就用破解版、盜版。此外,Andorid 眾手機廠商的版本不一致,對 Developer 而言是個困擾。再者, Swift 將是大勢所趨,Apple 淘汰避免 Objective-C 的開發只是時程問題。在這 IT 光速度的年代,能追趕這腳步已不容易,但觀望只能加速 IT 人員的淘汰吧!
 





prettyPrint();