2014年6月5日 星期四

蘋果推出新語言 Swift,程式設計師怎麼看?

此為網路轉載,原文來自http://share.inside.com.tw/posts/5050

本週一,蘋果在 WWDC 上給了人們一個大驚喜,針對 iOS 和 OS X 兩大作業系統,推出全新的程式語言 Swift。這款程式語言將取代目前的 Objective-C 語言,不過目前 Swift 仍然處於測試階段,會與 iOS 8 一同發表。
蘋果表示,Swift 的速度更快,使用起來也更簡單。另外,蘋果仍然會支援之前的開發語言和 app,其程式庫將同時包含對 Swift 和 Objective-C 的支援。實際上,Objective-C 已經存在超過 20 年了,對於蘋果此舉,人們在 Twitter 上展開了熱烈討論,雖然大家都在期盼一個全新的現代化程式語言,但有部分人並不開心。
蘋果表示,他們花了數年開發 Swift,程式高手應該很容易適應這一語言,而對於新手而言,Swift 的作業也非常友善,它不僅速度更快,而且融合了許多現代程式語言功能,比如 closure、generics、類型界面,多返回類型,命名空間等。蘋果還表示,Swift 非常易學,它還為開發人員創造出一個「互動式體育場」(Xcode 開發環境下的 playground)。
一些工程師對蘋果這次改變發表了自己的看法,同時也闡述了這個新程式語言對他們日常工作的影響。

全新的蘋果

知名 iOS 工程師 Steve Streza 說道,蘋果這次轉變讓他感到非常興奮,因為和 Objective-C 語言相比,Swift 的確更具現代感,而且還有更好的語法和類型風格管理功能。Streza 表示,Swift「讓我反思自己是如何設計 app 接口的」,但他也強調,對於自己目前的工作,Swif 不會造成太大影響。他是一個程式老手,可以很容易接受一個新的程式語言。除了興奮,Streza 也談到了自己的顧慮,那就是 Objective-C 和 Swift 兩種語言究竟該如何相互協作,因為這兩個語言貌似有很大不同,比如程式編寫的方式,和 app 接口返回的數據。此外,Streza 也指出,Swift 最後是否能被工程師接受也是一個值得關注的問題,工程師一般不願意在自己不熟悉的平台上工作,這樣會讓他們產生挫敗感。
雖然 Streza 有上述這些疑問,但是他仍然表示自己會用 Swift 開發 App,同時他認為如果有 iOS 或 Mac 開發人員無法接受 Swift,肯定是非常愚蠢的。
Kevin Ingersoll 是一名網頁開發人員,來自洛杉磯,他在一封電子郵件中寫道,「對於一個網頁開發人員而言,學習 Swift 的門檻要比 Objective-C 低得多,因此對於 Swift,我感到非常興奮」。Kevin 表示自己之前有想過開發 app ,但由於需要投入大量時間和精力學習 Objective-C,最後不得不放棄。現在,這些都不是問題了。
Quentin Zervaas 來自澳洲,他曾開發過一款非常受歡迎的公共交通 app 。Quentin 相信,Swift 證明了蘋果非常重視工程師,為工程師提供了便於使用的開發者工具和開發流程,他也會更加期待 Swift 的實時調試功能,而且簡化的語法能夠保證簡潔的程式。
此外,一些並非工程師出身的人對蘋果這次動作也感到非常興奮,他們覺得學習 iOS 程式將會變得更加簡單,也更加自信了。

潛在的憂慮

不過,也有人不喜歡這種變化,Mike 是一個擁有五年 Objective-C 開發經驗的工程師,他表示 Swift 讓它覺得自己更喜歡 Objective-C,而且不想再學習一個新的語言了。和 Objective-C 相比,他並不清楚 Swift 到底有什麼優勢。他覺得,蘋果只不過是為了所謂的「創新」做做樣子罷了。Mike 說自己會去了解一下 Swift,但是他擔心 Swift 很難真正為工程師帶來價值。這可能是老工程師和新手會產生分歧的地方。
Swift 是否能被工程師接受,現在來​​說尚為時過早,但是在 WWDC 上,人們對於這個全新的語言還是非常興奮的。蘋果高級副總裁 Craig Federighi 宣布 Swift 的時候,大家先是「哇哦」了一下,然後才爆發出掌聲。
如果 Swift 真的像蘋果說的那麼有革命性,那麼未來, iOS 和 Mac app 都將會發生巨大的改變