做者:Jesse Squires,原文連接,原文日期:2016.1.7
譯者:pmst;校對:numbbbbb;定稿:numbbbbbhtml
假期一晃而過,Swift.org 又從新開始更新東西啦。假若你也是 Apple GitHub 開源項目的跟隨者之一,你可能已經注意到了。早前不知爲什麼我錯過了一些重要的東西,直到本週我才發現 SwiftExperimental.swift
這貨。目前,它爲 Set
集合自定義了大量 unicode 操做(譯者注:有 ∈ 、∉、⊂、⊄、⊆ 等等!)。這真是棒極了!我火燒眉毛想要在標準庫中看到更多諸如此類的 API 接口。無論怎樣,先來看看本週有哪些好玩的東西吧。git
Austin Zheng 提交了一個 pull request 用於移除舊的 mirror API。github
Andrew Naylor 合併了一些改動用於加速 corelibs-foundation 框架中的 JSON 解析。咱們知道 Swift 社區裏的傢伙都熱衷於 JSON 解析。swift
Keith Smiley 提交了一個 pull request,添加對 Swift 包管理器中的 corelibs-xctest 的支持。app
Chris Lattner 從新設計了參數的 AST 表示方式。框架
Matthew Johns 給出了一個提議旨在改進成員構造器(Memberwise Initializers ,這樣翻譯會不會有打個人衝動~),目前正在審覈中中。正如 Lattner 所說,Swift 當前的 Memberwise Initializers 行爲尚存在大量不足之處。因此我感受這個提議頗有可能被接受。函數
有關於「必須使用 self 來存取實例變量」的提議不出意外被咔嚓,拒絕掉了。拒絕的主要緣由有如下三點:flex
表達有點囉嗦,意圖不夠清晰ui
減小 self.
的使用可以預防可能的循環引用(retain-cycle)翻譯
以及開發團隊但願採用這種用法能夠簡單地經過連接器(linter)來執行它。
Doug Gregor 提交了一個函數命名的建議(譯者:很奇怪,頁面 404)。原文以下:「Swift 支持一等函數,所以任何函數(或者方法)均可以存儲爲函數類型的值。然而,Swift 程序中並非全部函數都能命名 —— 你不能在命名同時提供參數列表。」 缺失這個特性絕對是 Swift 中的一個痛點,尤爲是在使用 Cocoa 和 Objective-C selectors 時。以上就是提議的概述。
Doug Gregor 注意到擴展 @objc
協議時發生了一些使人驚訝的行爲 —— extension
中的成員在 Objective-C runtime 時竟然沒法對外使用。?幸運地是,我在運行時並無遇到這種狀況。
最後要說的是,?.
運算符在 Swift 中是 「call-me-maybe」 運算符?以上是本週開源週報內容
本文由 SwiftGG 翻譯組翻譯,已經得到做者翻譯受權,最新文章請訪問 http://swift.gg。