去年夏天,蘋(píng)果在全球開(kāi)發(fā)者大會(huì)(WWDC)上推出了供iOS 和 OS X 應(yīng)用開(kāi)發(fā)的新編程語(yǔ)言Swift ,幾乎每一個(gè)參會(huì)者都對(duì)此感到吃驚。
這種編程語(yǔ)言看起來(lái)好像是蘋(píng)果有意開(kāi)發(fā)的。就像當(dāng)前網(wǎng)頁(yè)開(kāi)發(fā)中流行的其他幾種語(yǔ)言一樣,Swift 的句法簡(jiǎn)潔易讀,并且相對(duì)于原來(lái)的 Objective-C 語(yǔ)言更容易使用。它是由蘋(píng)果編譯程序?qū)<以O(shè)計(jì)的,因此,除了可以與現(xiàn)有代碼和 Cocoa 庫(kù)兼容外,以一定的指標(biāo)為考量依據(jù),它的速度也有所提升。
然而,雖然蘋(píng)果給這種語(yǔ)言提出的口號(hào)是“讓每個(gè)人都可以開(kāi)發(fā)出令人驚嘆的應(yīng)用”,但如果不提供一些指導(dǎo)的話,任何新手都不會(huì)使用 Swift 語(yǔ)言開(kāi)發(fā)出完善的iOS 或 OS X 應(yīng)用。
為此,蘋(píng)果及其開(kāi)發(fā)者社區(qū)從事了大量工作,發(fā)布了許多相關(guān)教程。在推出 Swift 語(yǔ)言的同一周,蘋(píng)果還發(fā)布了一個(gè) Xcode 版本用來(lái)支持這種語(yǔ)言,同時(shí)還免費(fèi)提供一本書(shū)用來(lái)解釋它的句法細(xì)節(jié),并創(chuàng)建了一個(gè)博客,發(fā)帖詳細(xì)介紹這種語(yǔ)言的最新?tīng)顟B(tài)和最佳應(yīng)用方法。甚至深受學(xué)生們歡迎的斯坦福大學(xué)iOS 課程也從 Objective-C 語(yǔ)言轉(zhuǎn)向了 Swift 語(yǔ)言。
然而,對(duì)于那些剛剛開(kāi)始學(xué)編程的新手來(lái)說(shuō),這些資源仍然令他們心存疑慮。那就加入Swifty 吧,這款應(yīng)用提供了一套交互式教程,可以逐步指導(dǎo)你,使你在iPhone 或iPad 上面能夠?qū)W到 Swift 語(yǔ)言的基礎(chǔ)知識(shí)。
Swifty 上面目前共有超過(guò) 200 個(gè)教程,起先是有關(guān)變量和數(shù)據(jù)類(lèi)型的基礎(chǔ)內(nèi)容,隨后是面向?qū)ο蟮木幊淘O(shè)計(jì)要領(lǐng)。很顯然,iPhone 鍵盤(pán)并不是編寫(xiě)代碼的最佳工具,所以開(kāi)發(fā)者約翰尼斯·伯格(JohannesBerger)想出了一個(gè)有趣的界面,在外觀和感覺(jué)上都像是在編程,但用起來(lái)更像是交互式測(cè)驗(yàn)。
每個(gè) Swifty 教程一開(kāi)始是用一到三個(gè)句子來(lái)解釋新概念,或是之前涉及的相關(guān)概念的重要方面。如下圖所示,上面是之前編寫(xiě)的幾行代碼,空白處則是缺失的一些關(guān)鍵名稱(chēng)、類(lèi)型和值。當(dāng)你輕敲屏幕,它會(huì)讓你從多個(gè)選項(xiàng)中進(jìn)行選擇。如果你做出了正確的選擇(有時(shí),會(huì)給你多個(gè)正確選項(xiàng),用于展現(xiàn)不同的結(jié)果),它會(huì)“運(yùn)行”代碼,顯示結(jié)果。
現(xiàn)在,屏幕最下面“控制臺(tái)”輸出的信息是預(yù)置的——你其實(shí)并不是在 Swifty 應(yīng)用中編寫(xiě)工作碼。但這種格式會(huì)便于你迅速熟悉 Swift 代碼的外觀,并對(duì)命名之類(lèi)的事情快速上手,同時(shí)也會(huì)使你易于接受使用功能創(chuàng)建代碼塊。鑒于我之前使用這種語(yǔ)言以及進(jìn)行粗略編程的經(jīng)驗(yàn),做出正確的判斷可能有點(diǎn)困難,但我認(rèn)為大多數(shù)新手在使用 Swifty 一兩個(gè)小時(shí)以后,可以直接跳入 Xcode“操場(chǎng)”,熟悉基于文本的簡(jiǎn)單項(xiàng)目。
很顯然,若想讓 Swifty 盡可能地容易理解,開(kāi)發(fā)者還需要投入大量工作,這款應(yīng)用每節(jié)課的收費(fèi)為 2.99 美元,如果你乘坐公交上下班,你可能對(duì) Swift 更為熟悉一些。如果你對(duì) Swifty 應(yīng)用能否幫到自己還不太確信——甚至是學(xué)習(xí)該語(yǔ)言本身——你可以先使用Swifty 免費(fèi)提供前 13 個(gè)教程,然后再確定是否付費(fèi)購(gòu)買(mǎi)后面的教程。
題圖來(lái)源: SWIFTY
翻譯:皓岳
Swifty TeachesApple’s New Programming Language On Your iPhone