程式設計師眼中的蘋果Swift語言:簡單 易學 高效

edithfang發表於2014-06-10

對於蘋果開發者來說,如今已經進入了“Swift 時代”。雖然程式語言 Objective C 備受喜愛,不過它作為蘋果主流程式語言的日子已經所剩無幾。隨著 WWDC 開發者大會的落幕,Swift 即將取而代之,成為蘋果新 iOS 8、OS X Yosemite 的新寵。

在舉行的蘋果 WWDC 大會上,Swift 正式曝光在鎂光燈前,嘆息聲、驚呼聲此起彼伏。不過不用太過擔心,Objective·C、Swift 能夠在同一個應用程式中並存。

VentureBeats 記者 Devindra Hardawar、理查德·布萊恩·萊利(Richard Byrne Reilly),採訪了知名軟體工程師山姆·索菲斯(Sam Soffes),瞭解程式設計師眼中的 Swift。據悉,索菲斯曾創作《Litely》、《Hipstamatic》、《Bible》等應用程式。

以下是記者準備的七個問題,涉及 Swift 的優點、缺點。以及 Objective·C的結局。索菲斯的答案中有些會有點駭人、令人震驚,或許還有幾絲傷感。

1、為什麼開發人員會去學習另一種語言?

蘋果 Swift 語言的主要目標,是簡單易學、使用便捷高效。蘋果並不是強迫所有人都去學習新的語言。過去,每當他們帶來一些巨大的技術變革(就像是自動引用計數,Automatic Reference Counting),他們都會給開發人員留上點時間,讓人們繼續沿襲老的方式懷舊,直到有一天,他們自己就想要擁抱新技術。

不過拋棄習慣的一切,轉去學習一些全新的東西絕非易事。對於很多開發者來說,Objective·C就是他們的生計、飯碗。拋棄我們過去幾年已經習以為常的工具,乍聽起來十分困難。不過,蘋果卻總有辦法將人們引向預設的方向。

蘋果這次的殺手鐗就是“速度”。Swift 使用十分便捷,這本身就是一場巨大的勝利。新的語法也非常棒。“我認為 Objective·C的開發者,很快就會喜歡上 Swift。”

2、Objective C 效率不夠高?

Objective C 是一款非常偉大的語言,它甚至比網路還要年長。不過這個已為蘋果貢獻多時的程式語言,想要上手卻並不容易,對那些程式設計菜鳥來說更是如此。“學習難”的主要原因在於,Objective C 看起來和其他的C系語言大相徑庭。它最讓人頭疼的原因就在於,它是“蓋在C語言上的薄薄一層”。

在C這樣的底層語言基礎上建立的東西,很難做到易學、高效。你需要通過C語言去做很多的事情——這顯然並不簡單。蘋果並不需要一個新的語言,不過他們還是積極地去做了一些新的、巨大的嘗試。

3、著手學 Swift 要用多久?容易麼?

Swift 才剛剛破殼而出,現在來講,這一問題的答案還很難說。“在嘗試了幾個小時之後,我把自己的 ObjectiveC 程式改用 Swift 編寫,進展非常不錯。起初,我真的感到很沮喪。不過,當我妥協之後,接受了學習過程中可能會讓人有些彆扭,Swift 的文件反而就變得更容易閱讀,遇到問題的時候也能迎刃而解。”

Swift 最出色的一大亮點在於:擺脫了C的束縛,Swift 語言十分便捷。

想把 Objective C 介紹給那些沒有程式設計基礎的人非常困難。你必須去解釋所有的例外規則,然後再從頭開始深入講解電腦科學話題。Swift 跳過了這一切,只是簡簡單單去編碼就 OK。

4、Swift 從哪裡汲取靈感?

Swift 從多種程式語言中獲得靈感。我在用它編碼的時候,會想起 JavaScript、Go、Ruby 以及其他一些語言。Objective C 歲數比較大。Swift 是一個非常可喜的變化,它擁有從很多現代程式語言延伸出的靈感。

5、Swift 的目標是?

蘋果 Swift 的目標,是讓任何人都能夠快速學習,高效編碼。“我覺得,他們可能希望用幾年的時間完全淘汰掉 Objective C。”簡單易學大有裨益,也會吸引更多的開發者會來到蘋果的平臺。

6、Swift vs 微軟、谷歌語言?

“用 Swift 的時候,我的眼前總會浮現出谷歌 Go 語言。Go 擁有很好的併發功能,很欣喜能看到蘋果汲取了 Go 的一些特點。微軟 C# 語言也十分簡潔。不過,現在才僅僅是蘋果新語言的開始。

7、Swift 可以省下兩、三行程式碼?

當然可以。相比 Objective C,Swift 算得上是極致簡潔。很多內容寫在一行,卻仍然簡單易讀。當然,用 Objective C 也能實現不少功能,但是內容會很長,而且不方便閱讀。有些新的東西,用 Objective C 編寫起來會讓人十分頭疼,但是用 Swift 卻是種快樂的享受。

“才與 Swift 接觸短短一天的時間,又開始用 Objective C 去寫程式碼了。不過,我已經開始想念起了 Swift。”

本文轉載自:騰訊科技

相關閱讀
評論(3)

相關文章