零基礎現學蘋果新語言Swift,可能嗎?

在剛剛過去的蘋果 WWDC 2014 上,除了備受關注的 OS X 10.10 和 iOS 8 之外,蘋果還發布了一款全新的編程語言 Swfit。對蘋果遍及全球的開發者來說,Swift 無疑是 WWDC 2014 的一大爆點,但對於那些跟電腦編程沒有太大關係的普通人來說,Swift 至多是蘋果發布的一款不明覺厲的新東西。不過,當驚奇的在社交網路上看到這樣:「實現我碼農的夢想,就靠你了, Swift ! 」 的話之後,他們又覺得 Swift 這個logo 為橙黃色俯衝雨燕的新東西離自己又沒有那麼遠。

但和開發者們聊了一下會發現,事情沒這麼簡單。

1. 比現在的編程語言要高級

作為 iOS 系統內部的開發語言,Swift 其實是現在正在使用的編程語言Objective C (objc)的替代品。我們如今在 iPhone 中所使用的 app 都是用這個編程語言一行行代碼敲出來的。這個編程語言在 1980 年代初由 Stepstone 公司發明,之後作為 iOS 操作系統的編程語言,隨後者流行至今。

從級別上來看,objc 與 C語言/ C++ 同屬較低級,而新晉的 Swift 要比這些都高級,屬於跟微軟的開發語言 C# 和安卓的開發語言 Java 看齊的開發語言。

2. 也更加高效

由於 objc 與同級別的 C語言/ C++ 同屬較低的系統級,所以相對的開發效率、工程化程度也自然比較低,Swift 一出生就代表著更新換代升級,自然也是更高效,比如編程的語法更加簡潔、語言的類型安全更加實現,以及引入了許多動態語言特徵等,而在運行速度上,它更是 比objc 快了 3 倍。「打個比方,objc 就像傳統木工的鋸、斧、刨等手工工具,而 Swift 就像是一體化的木工車床。它屬於創作工具的升級。」科泰華捷科技有限公司 CTO 牛靖宇這樣告訴《好奇心日報》。

3. 所見即所得,會讓初學者更有存在感

在演示 Swift 的過程中, Apple 特地展示了實時代碼效果預覽功能(Swift Playground)。程序員可以在左側輸入代碼的同時就在右側實現代碼執行演示。對於,資深程序員來說,這可能是一個檢查 bug 提高效率的好辦法,對於初學者來說,這個功能儼然就是一個鼓勵機制,敲幾行代碼就會出現相應的圖案,簡直充滿了即視感!

4. 學 Swift,英語不好沒關係

在發布 Swift官方開發者指南不到12 小時的時間裡,Swiftchina.org雨燕中文網就已上線,該網站在全網發出網路眾包翻譯的邀請,這樣看來,網路眾包翻譯的模式將有可能在儘可能短的時間內幫你掃清學習 Swift 的語言障礙。

5. 先別忙著學別人做評論

現在,各大社交網路,程序員社區都在忙不迭的評論 Swift 的性能,這些基於專業人士對於新產品敏銳洞察力下的判斷當然無可厚非。但作為一個編程知識薄弱的初學者,就先別忙著看評論,然後學幾句看似內行對 Swift 功能的喜惡評價。或者應該抱著學習的心態,感受一下Ourcoders站長,資深 iOS 開發者 tinyfool 的話:「評價 Swift 的好壞不應該是從一個抽象的概念上來,去判斷它是好還是壞。我們應該看的是,它是否符合它們使用的具體場景,是否可以給(特定的)用戶帶來便利和幸福 感,」

6. 「從 Swift 開始,我們終於站在了同一條起跑線上!」 別天真了。

對於一個學習過 objc 編程語言的人來說,他們學 Swift 肯定比零基礎的人容易的多。原因大概是平台和框架沒變,只是語法變了。tinyfool 對《好奇心日報》這樣解釋這一點:「就好像是我說普通話,你說上海話,CPU 還是 CPU,電腦還是電腦,只是語音語調變了,但是主要的名詞和世界觀沒變。」

7. 什麼叫做學會了一門語言

學會編程語言,會用編程語言到了解語言背後的 API 是一個循序漸進的過程。基本上可以分為「三個段位」,第一段位是知道它的語法到底是怎麼樣的,這是一個死記硬背的階段,相當於你在英語考試的選擇題上可以 全部做對,但是還不懂得怎麼去用。第二段位是知道了怎麼去用,從紙上談兵到了真正跟人交流的過程,這個時候你知道寫什麼程序適合用哪種語言。第三段位,就 是你能把你的思維完全轉換成編程思維,這跟學一門外國語言也很類似。對 ALCOL 語言做出過重大貢獻的 Alan J. Perlis 曾經說過:「一種不改變你編程的思維方式的語言,不值得去學。」所以長路漫漫,你得一點一點來。

8. 編程難度降低,然後呢?

「編程門檻雖然降低了,但生產力的門檻不會降低。 有越來越多的垃圾會被更容易的生產出來」,「開發門檻降低並不是一件壞事,因為新的人會進入到編程體系里來,帶來更多全新的思路。」這是現在人們對除 Swift 功能之外另一個探討的兩大主流觀點,這個類似於上升到技術與世界關係的倫理學問題是我們被「編程改變世界」或者「編程無用」沖昏了頭腦時,應該思考的!

【編輯推薦】

  1. 蘋果的新編程語言 Swift 簡介
  2. 看看國外的開發者怎麼看蘋果的新語言Swift
  3. 蘋果新語言Swift 後面的那個男人:Chris Lattner
  4. 蘋果使用20年的開發語言將被Swift邊緣化?
  5. 蘋果推出新開發語言Swift開發者們怎麼看?

【責任編輯:閆佳明 TEL:(010)68476606】

原文:零基礎現學蘋果新語言Swift,可能嗎? 返回移動開發首頁

你的讚賞是我堅持原創的動力

讚賞共 0 人讚賞
推薦閱讀:

凌雲劍:「咬」定蘋果不鬆口
商業周刊:蘋果CEO喬布斯的365天
《想吃蘋果的鼠小弟》習作設計王天山
素描課件——靜物蘋果繪畫步驟

TAG:語言 | 零基礎 | 蘋果 | 基礎 | Swift | Swif |