您好,登錄后才能下訂單哦!
小編給大家分享一下Swift 3 API設(shè)計(jì)準(zhǔn)則的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
一款編程語(yǔ)言標(biāo)準(zhǔn)庫(kù)的設(shè)計(jì)理念,往往對(duì)這門編程語(yǔ)言給人的整體感覺(jué)有很大影響。好的標(biāo)準(zhǔn)庫(kù)就好似語(yǔ)言本身的擴(kuò)展一般,并且保證標(biāo)準(zhǔn)庫(kù)內(nèi)部的一致性可以有效提升整體的開發(fā)體驗(yàn)。為了搭建一個(gè)好的 Swift 標(biāo)準(zhǔn)庫(kù),Swift 3 的其中一個(gè)主要目標(biāo)就是要定義一組 API 設(shè)計(jì)準(zhǔn)則,并且始終如一地應(yīng)用這些準(zhǔn)則。
Swift API 設(shè)計(jì)準(zhǔn)則包含了幾個(gè)主要目標(biāo),它們都旨在統(tǒng)一 Swift 的開發(fā)風(fēng)格。這些主要目標(biāo)分別是:
Swift API 設(shè)計(jì)準(zhǔn)則:實(shí)際的 API 設(shè)計(jì)準(zhǔn)則我們目前正在積極開發(fā)中。目前,Swift API 設(shè)計(jì)準(zhǔn)則的***樣稿已經(jīng)可以查看了!
Swift 標(biāo)準(zhǔn)庫(kù):整個(gè) Swift 標(biāo)準(zhǔn)庫(kù)正在審查和更新,以便能夠遵循 Swift API 設(shè)計(jì)準(zhǔn)則。實(shí)際的工作正在 Swift 倉(cāng)庫(kù)中的 swift-3-api-guidelines 分支進(jìn)行。
導(dǎo)入 Objective-C API:將 Objective-C API 翻譯成 Swift 的工作正在進(jìn)行,采用了幾種啟發(fā)式邏輯,這是為了讓 Objective-C API 能夠更好地匹配 Swift API 設(shè)計(jì)準(zhǔn)則。Objective-C API 的 Swift 翻譯指南這個(gè)提議描述了哪一種翻譯方式是有效的。當(dāng)然,由于這個(gè)過(guò)程采用了一系列的啟發(fā)式邏輯方法,因此我們會(huì)跟蹤其對(duì) Cocoa 和 Cooca Touch 所造成的影響,包括使用這些框架的 Swift 代碼的工作情況。Swift 3 API 設(shè)計(jì)指南審查倉(cāng)庫(kù)提供了一種如何查看這種自動(dòng)翻譯過(guò)程的方法,以便查看對(duì)使用 Cocoa 和 Cocoa Touch 的 Swift 代碼的影響。將不會(huì)被翻譯為 Swift 的某些特殊 Objective-C API 將會(huì)被標(biāo)記出來(lái)(比如說(shuō)使用 NS_SWIFT_NAME 宏),以提升最終所得的 Swift 代碼的質(zhì)量。雖然這種變化主要影響的是 Apple 平臺(tái),但是它也會(huì)對(duì)提供了和 Objective-C 框架相同的 API 的跨平臺(tái) Swift 核心庫(kù)(比如說(shuō) Swift 中使用的 Objective-C 運(yùn)行時(shí))造成一定的直接影響。
Swift 設(shè)計(jì)準(zhǔn)則檢查:目前現(xiàn)有的 Swift 代碼都遵循了不同的編碼風(fēng)格,甚至還包括了針對(duì) Cocoa 的 Objective-C 代碼指南。借助用來(lái)導(dǎo)入 Objective-C API 的啟發(fā)式邏輯,Swift 編譯器(可以)能夠檢查常見的 API 設(shè)計(jì)模式,找出不符合 Swift API 設(shè)計(jì)準(zhǔn)則的 API,并提供建議。
Swift 2 遷移到 Swift 3:Swift 標(biāo)準(zhǔn)庫(kù)和導(dǎo)入 Objective-C API 將會(huì)是 Swift 的一次重大更新,對(duì)源代碼進(jìn)行了一次全新的更正操作。因此,我們還需要?jiǎng)?chuàng)建一個(gè)能夠?qū)?Swift 2 代碼遷移到 Swift 3 API 的遷移器。
所有這些主要工作都正在積極地開發(fā)當(dāng)中。如果您對(duì)上述工作有興趣,那么可以 check out Swift API design guidelines、Swift standard library changes、Objective-C API importer changes提議以及目前的review repository,然后加入swift-evolution mailing list上的討論組中。
以上是“Swift 3 API設(shè)計(jì)準(zhǔn)則的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。