簡介
此外,Swift語言還有技術已經十分成熟的
Cocoa,及Cocoa Touch框架支持,更加可靠!
在
Swift發布前,iOS和OS X的開發語言是Objective C,這是一款已經三十多歲的程式語言,並且其語法十分之弔詭,和其他C語言風格的程式語言有著極大的區別。因此,讓許多想轉做iOS端套用開發的程式設計師紛紛吐槽,“為什麼Objective C這么難學?!”即便是一些已經在做iOS端開發的程式猿也表示,如果不是蘋果只支持Objective C,自己其實並不想用Objective C做開發。
因此,蘋果此次發布的Swift這款語法更為簡潔的,兼容Objective C的語言。而在其開發者指南中,我們可以看到Swift從Python和Java Script中學得了許多東西,從而讓Swift更為易讀,或者說更為“口語化”。
然而,對這類語法更為簡潔的語言,許多人會質疑其運行效率。對此,蘋果以對複雜對象的排序為例,指出Swift在許多方面比Objective C的性能更好。
Swift已經存在了多年。Apple基於已有的編譯器、調試器、框架作為其基礎架構。通過ARC(Automatic Reference Counting,自動
引用計數)來簡化
記憶體管理。我們的框架棧則一直基於
Cocoa。
Objective-C進化支持了塊、collection literal和模組,允許現代語言的框架無需深入即可使用。感謝這些基礎工作,才使得可以在Apple軟體開發中引入新的程式語言。
Objective-C開發者會感到
Swift的似曾相識。Swift採用了Objective-C的命名參數和動態對象模型。提供了對Cocoa框架和mix-and-match的
互操作性。基於這些基礎,Swift引入了很多新功能和結合面向過程和
面向對象的功能。
Swift對新的程式設計師也是友好的。他是工業級品質的系統程式語言,卻又像腳本語言一樣的友好。他支持playground,允許程式設計師實驗一段Swift代碼功能並立即看到結果,而無需麻煩的構建和運行一個套用。
Swift集成了現代程式語言思想,以及Apple工程文化的智慧。編譯器是按照性能最佳化的,而語言是為開發最佳化的,無需互相折中。可以從"Hello, world"開始學起並過渡到整個系統。所有這些使得
Swift成為Apple軟體開發者創新的源泉。
示例程式
Swift不需要引入
頭檔案(header file)或寫在main()內,也不需要在每一行敘述(statement)結結尾加上分號。例如變數的聲明方式如下:
var implicitInteger = 70var implicitDouble = 70.0var explicitDouble: Double = 70let numberOfApples = 3let numberOfOranges = 5let appleSummary = "I have \(numberOfApples) apples."let fruitSummary = "Ihave \(numberOfApples + numberOfOranges) pieces of fruit."
letpeople=["Anna":67,"Beto":8,"Jack":33,"Sam":25]for(name,age)inpeople{println("\(name)is\(age)yearsold.")}
資料下載
JavaEye的創始人Robbin發表意見:“對程式設計師來說,熟悉
Swift語法也不過一天時間足夠了。關鍵是要提供高級數據類型,簡化
Cocoa類庫,否則用不用Swift都沒區別。”
長達600多頁的
The Swift Programming Language 可以在
iBooks免費下載。