而如今,盡管距離2015年蘋(píng)果全球開(kāi)發(fā)者大會(huì)(WWDC 2015)開(kāi)幕還有好幾個(gè)小時(shí),卻已經(jīng)有不少的參會(huì)開(kāi)發(fā)者在舊金山的Moscone West會(huì)場(chǎng)外排隊(duì)等候入場(chǎng)。在今年的WWDC上,每天將有8個(gè)小時(shí)的Swift實(shí)驗(yàn)室時(shí)間,蘋(píng)果工程師團(tuán)隊(duì)將講授Swift的用法,并解答開(kāi)發(fā)者在Swift開(kāi)發(fā)中遇到的問(wèn)題,同時(shí)針對(duì)Swift專題,也將有4場(chǎng)演講專門(mén)呈現(xiàn),屆時(shí),Swift必將成為眾多參會(huì)者討論的熱點(diǎn)。
一年前的WWDC上,由蘋(píng)果軟件工程高級(jí)副總裁Craig Federighi為Swift揭幕,演示了類型推理、閉包和多個(gè)命名空間等功能。開(kāi)發(fā)者們屏住了呼吸,一時(shí)間爆發(fā)出熱烈的掌聲。他還開(kāi)玩笑說(shuō):“好多人壓根兒不信Swift有多好,還說(shuō)著‘那些人在胡扯些什么呀’的話”。
在發(fā)布僅7個(gè)月后,Swift便已成為Red Monk編程語(yǔ)言排行榜上第22位受歡迎的編程語(yǔ)言,并且將來(lái)很有可能代替Objective-C,排名上升至第3位。TIOBE 2015年6月編程語(yǔ)言排行榜顯示,Objective-C已進(jìn)入“自由落體”,Swift繼續(xù)上升。
同樣,在Stack Overflow(開(kāi)發(fā)者問(wèn)答網(wǎng)站)對(duì)157個(gè)國(guó)家的26,086名開(kāi)發(fā)者的調(diào)查中也發(fā)現(xiàn):Swift語(yǔ)言受開(kāi)發(fā)者歡迎,其以76.6%的比重高占榜首。
單從推廣度上來(lái)說(shuō),1995年推出的Java是Swift之前成功的編程語(yǔ)言。盡管Swift只局限于iOS設(shè)備,但到2017年會(huì)有15億臺(tái)iOS設(shè)備,比如今的10億多臺(tái)幾乎增加了50%。縱觀大局,Swift成就下一個(gè)成功典范或許只是時(shí)間問(wèn)題。
諸多大學(xué)和培訓(xùn)機(jī)構(gòu)基于市場(chǎng)需求,已開(kāi)始提供Swift課程。的iOS開(kāi)發(fā)大牛Ray Wenderlich就表示,“Swift的反響異常熱烈,開(kāi)發(fā)者趨之若鶩。”所以Swift推出沒(méi)多久,他就立刻將課程重心轉(zhuǎn)移到這門(mén)新語(yǔ)言上。
面對(duì)Swift的強(qiáng)大魅力,眾多開(kāi)發(fā)者怎么可能無(wú)動(dòng)于衷?雖然iOS應(yīng)用的編程語(yǔ)言是蘋(píng)果公司說(shuō)了算,但開(kāi)發(fā)者們還是心甘情愿緊緊跟隨,他們很清楚相比Android用戶,iOS用戶能帶來(lái)前者四倍的收益,如此一來(lái),Swift本身如何就不再是重要的因素了。
在Swift之前,80年代推出的Objective-C是的iOS應(yīng)用編程語(yǔ)言。但如今Objective-C已經(jīng)有點(diǎn)過(guò)時(shí)了,開(kāi)發(fā)者們甚至用“老掉牙”、“冗長(zhǎng)乏味”、“令人生厭”來(lái)形容它。當(dāng)然,只要是熱門(mén)語(yǔ)言,總會(huì)引來(lái)褒貶不一的評(píng)價(jià)。其實(shí)很多開(kāi)發(fā)者并不敢妄自評(píng)論,生怕說(shuō)了點(diǎn)不合時(shí)宜的話會(huì)曝光在Hacker News上。
打車應(yīng)用Lyft的工程副總裁Peter Morelli被問(wèn)到Objective-C語(yǔ)言是否太有難度時(shí),并未正面回答這個(gè)問(wèn)題,只是說(shuō):“它就像宗教戰(zhàn)爭(zhēng)似的,一片開(kāi)發(fā)者忙得熱火朝天的景象。”
Swift為何能引發(fā)如此熱烈的反響呢?眾所周知,不同編程語(yǔ)言的差別實(shí)在一言難盡,挑幾點(diǎn)來(lái)說(shuō),Swift既安全(代碼中少有漏洞出現(xiàn)),還體現(xiàn)了一些新特點(diǎn),跟其他主流語(yǔ)言一樣能為應(yīng)用添加豐富多彩的附加功能。
另一個(gè)重要的優(yōu)勢(shì)是:開(kāi)發(fā)者有什么需求,都能用Swift輕松表達(dá)出來(lái)交由電腦執(zhí)行。同樣的效果,可能用Objective-C就得多好幾行代碼,但Swift就簡(jiǎn)潔多了。“看看這些彎彎曲曲的代碼和分號(hào),用Objective-C的話,長(zhǎng)度將是Swift的四倍,”就職于技術(shù)課程服務(wù)公司Treehouse的開(kāi)發(fā)者M(jìn)yers Carpenter說(shuō)道。
6個(gè)月前,Lyft安排工程師拿Swift進(jìn)行試驗(yàn)后,決定用Swift把Lyft應(yīng)用重新編寫(xiě)一遍,預(yù)計(jì)在7月份完成這項(xiàng)工作。用Swift編寫(xiě)后的代碼長(zhǎng)度只是之前的1/5,且能將代碼重復(fù)和更新花費(fèi)的時(shí)間“從漫長(zhǎng)的幾個(gè)月縮減到短短幾天,”Morelli說(shuō):“這是Swift的大優(yōu)勢(shì)。”
LinkedIn旗下的文件共享服務(wù)SlideShare也是早期Swift應(yīng)用者之一。該公司開(kāi)發(fā)者反映說(shuō)向Swift的過(guò)渡非常成功,但他們也付出了成長(zhǎng)的代價(jià)。舉個(gè)例子,13英寸的MacBook Pro的處理能力根本不夠應(yīng)付將Swift轉(zhuǎn)換為電腦可讀格式的程序。SlideShare的軟件工程師Kyle Sherman在LinkedIn的工程博客上寫(xiě)道:“同事用15英寸i7s四核處理器的電腦,情況才好很多。不管怎樣,粉絲們對(duì)于Swift依舊熱情高漲。”
這類問(wèn)題待到Swift成熟之時(shí)就會(huì)迎刃而解了。Swift更新太快,還不穩(wěn)定,給推廣帶來(lái)了阻礙,所以諸多開(kāi)發(fā)者更愿意再等一段時(shí)間。Scott Logic軟件開(kāi)發(fā)公司的技術(shù)總監(jiān)Colin Eberhardt說(shuō),Swift頻繁更新使他不得不頻繁調(diào)整自己的代碼。他說(shuō):“做產(chǎn)品代碼的,肯定不愿意用Swift。”目前蘋(píng)果還不愿回應(yīng)這個(gè)問(wèn)題。
目前為止Objective-C仍然比Swift更廣為應(yīng)用,但如果Swift繼續(xù)發(fā)展下去,代替前者也不是不可能。一旦Swift穩(wěn)定了,成熟了,蘋(píng)果也許會(huì)選擇只留其一,將Swift定為iOS應(yīng)用編程語(yǔ)言。也許未來(lái)幾年內(nèi)還不至于到這一步,但Wenderlich認(rèn)為:“開(kāi)發(fā)者們很可能紛紛轉(zhuǎn)而使用Swift,那時(shí)Objective-C將退出人們的視線。”
本站文章版權(quán)歸原作者及原出處所有 。內(nèi)容為作者個(gè)人觀點(diǎn), 并不代表本站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé),本站只提供參考并不構(gòu)成任何投資及應(yīng)用建議。本站是一個(gè)個(gè)人學(xué)習(xí)交流的平臺(tái),網(wǎng)站上部分文章為轉(zhuǎn)載,并不用于任何商業(yè)目的,我們已經(jīng)盡可能的對(duì)作者和來(lái)源進(jìn)行了通告,但是能力有限或疏忽,造成漏登,請(qǐng)及時(shí)聯(lián)系我們,我們將根據(jù)著作權(quán)人的要求,立即更正或者刪除有關(guān)內(nèi)容。本站擁有對(duì)此聲明的最終解釋權(quán)。