丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
特寫(xiě) 正文
發(fā)私信給訾竣喆
發(fā)送

29

一向“圈地自萌”的蘋(píng)果為什么選擇將Swift開(kāi)源?

本文作者: 訾竣喆 2015-12-07 10:30
導(dǎo)語(yǔ):蘋(píng)果在近日正式將Swift語(yǔ)言轉(zhuǎn)成了開(kāi)源編程語(yǔ)言,并將其放到代碼托管網(wǎng)站GitHub中以供更多開(kāi)發(fā)者共同開(kāi)發(fā)。那么他們?yōu)楹芜x擇開(kāi)源?對(duì)于 Swift 3.0,他們有什么計(jì)劃嗎?

蘋(píng)果在今年六月的WWDC大會(huì)上推出了Swift2.0,并宣布將于今年年底前開(kāi)放源代碼。而蘋(píng)果也在近日正式將Swift語(yǔ)言轉(zhuǎn)成了開(kāi)源編程語(yǔ)言,并將其放到代碼托管網(wǎng)站GitHub中以供更多開(kāi)發(fā)者共同開(kāi)發(fā)。蘋(píng)果公司高級(jí)副總裁克雷格·費(fèi)德里希最近接受了外媒的采訪,對(duì) Swift 開(kāi)源這一行為進(jìn)行了說(shuō)明。

開(kāi)源的基礎(chǔ)

據(jù)悉,Swift的編程語(yǔ)言將在Apache 2.0許可的基礎(chǔ)上推出,Apache 2.0也是微軟去年在.NET框架開(kāi)源時(shí)所使用的許可,軟件開(kāi)發(fā)者將可以對(duì)這款新編程語(yǔ)言根據(jù)自己的需要進(jìn)行修改。該代碼將被放在GitHub上托管,其中包括編譯器、LLDB調(diào)試器以及REPL命令行環(huán)境、標(biāo)準(zhǔn)核心庫(kù)以及代碼配套工程等。在Swift(包括開(kāi)源部分)中新加入了Swift軟件包管理器,該管理器將作為用于存儲(chǔ)Swift模塊的早期項(xiàng)目。

雖然其中的絕大部分都符合Apache許可標(biāo)準(zhǔn),但費(fèi)德里希表示,蘋(píng)果還提供了一種更高的許可運(yùn)行機(jī)制——如果開(kāi)發(fā)者在Swift上創(chuàng)建了代碼,而且其中的部分代碼是從Swift庫(kù)中調(diào)用的話,開(kāi)發(fā)者將不必再提供該代碼的來(lái)源。

蘋(píng)果的工程師正在著手把Swift改為使用GitHub repos來(lái)以開(kāi)源的方式開(kāi)發(fā)語(yǔ)言。

一向“圈地自萌”的蘋(píng)果為什么選擇將Swift開(kāi)源?

“Swift將在GitHub上完成開(kāi)源工作,” 費(fèi)德里希說(shuō),“Swift團(tuán)隊(duì)正在加緊修改的工作進(jìn)程,其中也包括對(duì)Swift 3.0的開(kāi)發(fā),所有的工作進(jìn)展都會(huì)在GitHub上開(kāi)放?!?/p>

所以,Swift 3.0將不會(huì)再像今年6月公布Swift 2.0那樣在WWDC上得到大量關(guān)注,3.0將不會(huì)在WWDC 2016上出現(xiàn),開(kāi)發(fā)者更不會(huì)得到Xcode上的beta版。相對(duì)的,開(kāi)發(fā)者能夠在WWDC之前就拿到最新版的Swift語(yǔ)言,體驗(yàn)到下一代Swift的新變化。

盡管代碼將在GitHub上提供,但Swift社區(qū)同樣也是Swift.org的家。在這里,開(kāi)發(fā)者將能夠提交bug并使用bug追蹤系統(tǒng),也能夠使用郵件列表或是與Swift工程的博客(蘋(píng)果官方博客)進(jìn)行交流,獲取社區(qū)指南、Swift教程文檔或是開(kāi)發(fā)與API設(shè)計(jì)指南等。換句話說(shuō),你所能想到的任何開(kāi)源編程語(yǔ)言社區(qū)中所提供的服務(wù)這里應(yīng)有盡有。

將不僅限于支持OS X和Linux平臺(tái)

蘋(píng)果官方聲稱Swift將不僅能夠支持蘋(píng)果自家的平臺(tái)還能夠支持Linux,而這正像蘋(píng)果在6月份的時(shí)候所承諾的那樣。這已經(jīng)涵蓋了大量的Swift開(kāi)發(fā)者(他們通常都會(huì)運(yùn)行OS X系統(tǒng))以及大部分的大眾開(kāi)發(fā)者(他們使用Linux的頻率要遠(yuǎn)高于一般用戶)。蘋(píng)果的Linux工具包括全新的封包管理器、LLDB調(diào)試器以及REPL命令行環(huán)境。

至于Windows等其他平臺(tái),如果需求較多的話,至少在一開(kāi)始蘋(píng)果將會(huì)依靠社區(qū)來(lái)提供支持。

一向“圈地自萌”的蘋(píng)果為什么選擇將Swift開(kāi)源?

“(對(duì)于Windows平臺(tái)的支持)在Swift開(kāi)源的初版中,這并不是我們所首要考慮的問(wèn)題,” 費(fèi)德里希說(shuō),“我們認(rèn)為對(duì)Linux和我們自家的平臺(tái)的支持才能夠?yàn)槌醢娲蛳乱粋€(gè)很好的基礎(chǔ)。但是實(shí)際上,我們已經(jīng)具備了把Swift開(kāi)源移植到其他平臺(tái)的能力,LLVM、Clang以及LLDB這些Swift的基礎(chǔ)技術(shù)其實(shí)已經(jīng)完全可以移植到Windows平臺(tái)上。我認(rèn)為這是可以預(yù)見(jiàn)的——社區(qū)中的某個(gè)人——無(wú)論是微軟的領(lǐng)導(dǎo)者還是其他的人,早晚都會(huì)這樣去做?!?/p>

為何開(kāi)源?

Swift 開(kāi)源蘋(píng)果公司主要有兩個(gè)目的。第一個(gè)目的就是讓 Swift 編程更加通用、更加多樣化——除了蘋(píng)果平臺(tái)的應(yīng)用,開(kāi)發(fā)者也可以在其他項(xiàng)目中使用這個(gè)編程語(yǔ)言。

另外蘋(píng)果也非常有遠(yuǎn)見(jiàn),很有野心。費(fèi)德里希表示:“我們認(rèn)為未來(lái) 20 年 Swift 將成為編程的標(biāo)準(zhǔn)語(yǔ)言。我們認(rèn)為它將成為未來(lái)主要的編程語(yǔ)言之一?!?/p>

“一些開(kāi)發(fā)者,包括 IBM 的企業(yè)開(kāi)發(fā)者很早之前就開(kāi)始在 Swift 中開(kāi)發(fā)他們的移動(dòng)應(yīng)用,他們就希望能夠?qū)㈤_(kāi)發(fā)者開(kāi)發(fā)的東西、還有一些代碼等部署在云中?!?費(fèi)德里希說(shuō),“而我們認(rèn)為要想在這方面給他們提供支持的話,最好的辦法就是開(kāi)源?!?/p>

一向“圈地自萌”的蘋(píng)果為什么選擇將Swift開(kāi)源?

而蘋(píng)果的另外一個(gè)目的則與教育相關(guān):當(dāng)開(kāi)發(fā)者花時(shí)間來(lái)學(xué)習(xí)Swift 時(shí)(或者教育工作者教授 Swift 使用方法時(shí)),蘋(píng)果希望這些技術(shù)能夠?yàn)楦嗳怂谩?/p>

“我們與教育工作者合作,很多教授都有意教授 Swift,因?yàn)樗且环N富有表現(xiàn)力的語(yǔ)言,能夠引入各種編程概念。Swift 開(kāi)源能夠讓教育工作者盡快地將其整合,讓它成為核心課程的一部分?!?/p>

在今年6月份,蘋(píng)果向開(kāi)發(fā)者了解他們過(guò)去一年使用 Swift 的體驗(yàn)時(shí),他們就發(fā)現(xiàn) Swift 的可傳授性強(qiáng)是它最大的賣點(diǎn)。Swift 不僅能夠用于交流編程創(chuàng)意,而且還能夠?qū)⑺南嚓P(guān)知識(shí)利用到更多場(chǎng)合。

“當(dāng)你第一次學(xué)習(xí)時(shí),通常會(huì)出現(xiàn)的問(wèn)題是:你的代碼是否被編譯過(guò)。而我喜歡Swift的一點(diǎn)就是,在某些情況下,你根本不用去想這些事情,直接輸入代碼就好。希望這將有助于更好地理解正在發(fā)生的事情,不再讓人感到頭疼?!?/p>

——iOS開(kāi)發(fā)者,APP Camp教師 萊斯利·貝克

雖然開(kāi)源后給開(kāi)發(fā)者帶來(lái)了諸多便利,不過(guò)遺憾的是,根據(jù)Swift.org中的表述,開(kāi)發(fā)者在把應(yīng)用程序提交給蘋(píng)果的應(yīng)用程序商店時(shí)仍需要在Mac上使用Xcode。

開(kāi)源會(huì)對(duì)編程語(yǔ)言帶來(lái)什么影響?

在Swift開(kāi)源并在此基礎(chǔ)上開(kāi)發(fā)新版本的同時(shí),不但能夠使開(kāi)發(fā)人員更容易地看到蘋(píng)果公司在做什么,同樣也使他們能夠更容易直接對(duì)該項(xiàng)目作出貢獻(xiàn)。蘋(píng)果表示,從Swift 1.0到2.0,開(kāi)發(fā)者的反饋為開(kāi)發(fā)工作做出了相當(dāng)大的貢獻(xiàn)。但是同樣的,至少?gòu)睦碚撋现v,公司將不再成為Swift語(yǔ)言的唯一仲裁者——開(kāi)發(fā)者可以提交引入請(qǐng)求。Swift.org概述中也提到了當(dāng)開(kāi)發(fā)人員要提出修改時(shí)的工作流程。

“如果你注意到我們的 Swift 2.0 的語(yǔ)言特性的話,你就會(huì)發(fā)現(xiàn)在錯(cuò)誤處理、保護(hù)信息、可用性和控制上,均是基于開(kāi)發(fā)者使用 Swift 來(lái)開(kāi)發(fā)應(yīng)用的對(duì)話來(lái)完成的。我們認(rèn)為,Swift 開(kāi)源后將獲得進(jìn)一步發(fā)展,這將有利于進(jìn)一步深化交互?!?/p>

一向“圈地自萌”的蘋(píng)果為什么選擇將Swift開(kāi)源?

Swift雖然只是一個(gè)很“年輕”的語(yǔ)言,但是自問(wèn)世以來(lái)卻一直廣受歡迎。而這也使得試圖開(kāi)發(fā)和維護(hù)的代碼的開(kāi)發(fā)人員產(chǎn)生了小小的挫敗感。Swift 1.x在半年甚至一年前所創(chuàng)建的代碼可能也不會(huì)在今天的Xcode的最新版本中編譯,所以如果有問(wèn)題的話蘋(píng)果肯定是知道的。

“在為開(kāi)發(fā)者提供源發(fā)展工具方面,我們是非常開(kāi)放的。所以如果開(kāi)發(fā)者選擇在Swift中編程的話,我們也會(huì)在不斷發(fā)展語(yǔ)言的過(guò)程中給他們提供適合的工具來(lái)幫他們發(fā)展源代碼?!?/p>

不過(guò)蘋(píng)果公司也在計(jì)劃解決更大的問(wèn)題,如今有越來(lái)越多的開(kāi)發(fā)者正在為該語(yǔ)言的發(fā)展做出著貢獻(xiàn),所以蘋(píng)果就更要去積極解決問(wèn)題。蘋(píng)果計(jì)劃在 Swift 3.0 中進(jìn)一步完善源兼容特性。

Swift 會(huì)對(duì) Objective-C 產(chǎn)生什么影響?

對(duì)于Objective-C,Swift的開(kāi)源并沒(méi)有改變其在蘋(píng)果的生態(tài)系統(tǒng)中的位置。它已經(jīng)存在了好幾年了,它仍然被用來(lái)編寫(xiě)蘋(píng)果的平臺(tái)上運(yùn)行的諸多應(yīng)用程序(包括蘋(píng)果自己的),這個(gè)數(shù)字截至目前仍在持續(xù)增加,因?yàn)檫@的確是有必要的。但Swift顯然是Objective-C未來(lái)的發(fā)展方向,所以蘋(píng)果仍然希望開(kāi)發(fā)者可以用Swift來(lái)啟動(dòng)他們的新項(xiàng)目。

“Objective-C 將不會(huì)就此消失。我們還是非常喜歡 Objective-C 這種語(yǔ)言,我們還需要依賴 Objective-C,在蘋(píng)果公司有很多工作都需要通過(guò)Objective-C來(lái)完成。我們會(huì)繼續(xù)支持Objective-C,繼續(xù)完善這種語(yǔ)言,以適應(yīng)這個(gè)不斷變化的世界。不過(guò)對(duì)于即將進(jìn)入我們的平臺(tái),想要開(kāi)發(fā)應(yīng)用的開(kāi)發(fā)者,我們認(rèn)為Swift更適合他們。我們覺(jué)得從 Swift 入手是非常正確的。但是在可預(yù)見(jiàn)的未來(lái),我們會(huì)繼續(xù)維護(hù)、完善和支持 Objective-C ?!?/p>

一向“圈地自萌”的蘋(píng)果為什么選擇將Swift開(kāi)源?

開(kāi)發(fā)者們?cè)谡劦絊wift和Objective-C的使用情況時(shí)通常都會(huì)這么說(shuō):有些人堅(jiān)持使用Objective-C,因?yàn)樗麄円呀?jīng)熟悉該語(yǔ)言或是因?yàn)樗麄儾幌M旌鲜褂肙bjective-C代碼和Swift代碼,但越來(lái)越多的消息顯示,無(wú)論是新項(xiàng)目還是老項(xiàng)目,新數(shù)據(jù)塊都在逐漸被Swift代碼所取代。

似乎蘋(píng)果未來(lái)將繼續(xù)為Objective-C提供支持,但蘋(píng)果何時(shí)會(huì)停止支持目前并沒(méi)有一個(gè)確切的消息。不過(guò),沒(méi)有人會(huì)想被打個(gè)措手不及。Swift的日益成熟、Swift 3.0所承諾的源代碼兼容性、開(kāi)源版本更加廣泛的應(yīng)用場(chǎng)景都旨在推動(dòng)開(kāi)發(fā)者更為舒服的過(guò)渡到Swift陣營(yíng)。

Via arstechnica

相關(guān)閱讀:

擁抱Swift吧,Objective-C已經(jīng)是過(guò)去時(shí)


蘋(píng)果新貴Swift之前世今生


一向“圈地自萌”的蘋(píng)果為什么選擇將Swift開(kāi)源?

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。

分享:
相關(guān)文章

萌萌噠編輯

宅男一枚,興趣廣泛,歡迎閑聊。微信:zjz723172434;郵箱:721372434@qq.com
當(dāng)月熱門(mén)文章
最新文章
請(qǐng)?zhí)顚?xiě)申請(qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說(shuō)