隨後身邊的朋友很快就開始調侃:《21天精通Swift》、“打算開個7天的Swift培訓班,保證上崗就業”等等。
這一切皆因為一件事情:今天凌晨蘋果在WWDC大會上釋出了新的程式語言Swift。
每隔幾年都會有一家公司站出來說自己開發了一個獨特的程式語言,一般都是“雷聲大雨點小”,為什麼這次的情況卻有些不同?也許其中一個原因就是,其釋出者是擁有900萬開發者的蘋果,大家早已熟悉他們原有的程式語言Objective-C,也知道多少知道這門語言的弊端,而Swift似乎是有意地做出一些改變:
“因為objc比較像C++等傳統面嚮物件語言,有很多現代的高階語言特性都沒有,而其他像Ruby和Python這些正是因為有這些特性所以寫程式碼效率很高(這裡說的不是執行效率),所以寫objc就會跟寫C++和Java那樣繁瑣。現在Swift相當於是抄了許多現代高階語言的特性,然後又做了一套只有自家平臺用的語言,一方面降低了開發的門檻,讓很多隻接觸過現代語言的初學者都可以輕易上手,另一方面提高了大家的開發效率(只要你不是寫跨平臺軟體)。”——Terry
從微博上看的話,很多開發者對這門新語言給予肯定的態度:
@鄭玉璟:蘋果的Swift是一門集大成的程式語言,剔除了其他語言大部分弊端,加入了諸如閉包等現代特性,在效率提升的情況下還可以極大地簡化開發工作,不得不佩服蘋果工程師們的努力。從不同語言入門也變的容易。如果可以移植到其他平臺並保持很好的穩定性,將會對java等帶來毀滅性衝擊。
@Sungrone:剛看了一下Swift的文件,感覺幾爽。沒有剛剛接觸objc的牴觸感覺。剛開始學objc時,最容易搞亂的是方法和委託,現在這個好了。委託什麼的都放到閉包裡解決。
@YeeWang:LLVM革新了古老的Objective C,又為Apple平臺帶來現代時尚的Swift語言。LLVM雖也稱為virtualmachine,但是和以往的JVM/.net這類直譯器不一樣:LLVM能最終編譯為機器原生語言。swift語言上能時尚,下能通C,相比較Java
/C#這類語言就不那麼容易了。部分人閱讀官方文件過後,認為Swift有著指令碼語言的身影,並降低了初學者的門檻。
@程寄奴_野王:Swift 感覺好像很簡單的樣子,一下子拉低了開發iOS app的門檻。大量的指令碼工程師可以轉成搞iOS了。
@藍色墜落:Swift 有點像 JavaScript ,指令碼語言,同時也吸取了 Java 和 Python 的優點。
@Wayne-chan:確實像JS,但用一種弱型別風格表達強型別語言,Class設計很節制,比JS多了析構、override,但沒overwrite與private,只能像JS那樣用函式空間隔離類鏈中符號命名。我猜Swift會對接JS,畢竟JS是目前iOS裝置唯一能不經審查
就釋出的程式設計途徑。
@bitinn:Swift基本上就是反著做事情——與其把指令碼語言通過標準變成更好的程式語言,不如把程式語言變成更像指令碼語言的格式。我猜和多數抽象化一樣,某程度的效能損失不可避免,所謂的高效能+跨平臺有待驗證。
不過有朋友告知,對Swift如此偏愛的開發者,大部分都是專案經驗不豐富的初學者。“早上在HackerNews看到有人驚呼‘這門語言竟然把Go的很多語言特性都實現了’,也有人說‘這些特點早在幾十年前就有程式語言實現了,它叫LISP’。其實算一下Go語言出現和被推廣的時間,你就知道發帖讚美的人是大概什麼時候開始學習程式設計的了。”
本文來自:雷鋒網