喜歡 Swift 編程語言的人主要是初學者?
一早一起來,朋友圈除了被蘋果發布會刷屏外,還漫天散布著一條類似的招聘消息:“招聘iOS程序員,要求擁有5年的Swift開發經驗,有狼性,待遇月薪20K+,專車接送。”
隨后身邊的朋友很快就開始調侃:《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雖也稱為virtual machine,但是和以往的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如此偏愛的開發者,大部分都是項目經驗不豐富的初學者。“早上在Hacker News看到有人驚呼‘這門語言竟然把Go的很多語言特性都實現了’,也有人說‘這些特點早在幾十年前就有編程語言實現了,它叫LISP’。其實算一下 Go語言出現和被推廣的時間,你就知道發帖贊美的人是大概什么時候開始學習編程的了。”