Swift 新進展(2016年1月份)

作者:Erica Sadun,原文鏈接,原文日期:2016-01-12
譯者:天才175;校對:Cee;定稿:Channe

譯者注:有些內容已經過期,有些提議的狀態已經發生了改變。

撤回的

為了進一步的改進,SE-0018,這個靈活的逐個成員初始化提案,沒有被接受,也沒有被拒絕,回到了進展清單。它提議將逐個成員初始化從結構體擴展到類,以避免過度的模板代碼。雖然開始時具體的實現細節并不清楚,但很多開發者喜歡它的核心理念。蘋果承諾很快就會反饋具體意見。(校者注:已被駁回)

積極審查的

SE-0010 提議增加一種不可變的 StaticString.UnicodeScalarView(我喜歡這個)。(校者注:已被駁回)

SE-0013 提議移除在調用時使用無 final 限制的 super 方法(校者注:即使用子類方法)。我對這個持懷疑態度,也沒花多少時間去研究它。(校者注:已被駁回)

SE-0020 旨在擴展構建配置以區分基于現在的 Swift 語言發布版本的代碼(這個我也蠻喜歡的!)。(校者注:Swift 2.2 中已接受)

即將到來的

Doug Gregor 的 SE-0021,提供了在模塊中引用可能要重載的函數的更具體的方法。(校者注:Swift 2.2 中已接受)

還有他的 SE-0022,創建了與目前字符串方法相比更合理的參數標簽敏感選擇器。(給這兩個都點一個贊)(校者注:已接受)

已接受的

SE-0011 在 Swift 2.2
被接受了,在協議上將 typealias 的實現與 associatedtype 的要求區分開來。

討論的

每當我覺得自己在閱讀列表上這些東西取得進展時,我的未讀信息數又回到了 500 以上,壓力真挺大的。我正關注著一些可能并不是大多數開發者感興趣的話題。

目前也有一些與改進序列和集合,從其他語言那里增加更多的標準庫特性,完善協議等相關的話題。

有兩個我認為非常酷的討論提議:一個是給 nil 增加一個「完全未初始化」的可選項,叫 none;另一個是為變量聲明添加命名變量。它們被關注得很少。我建議你們去看看,這兩個提議都來自 Amir Michail。

曾經有一個關于閉包返回可推斷值的提議,不過好像已經掛了,還挺慘的。在現版本的 Swift 中,可推斷返回值被限定為一行閉包。這似乎可以排除分支場景——因為它必須是一個明確的終點——不過這已經被討論過了。

我模糊地記得看過一些關于消除尾閉包多參數調用的東西,但在寫這篇文章的時候卻找不到了。無論如何,我贊成這種做法,因為把處理成功失敗的一個分支作為一個參數時,再把另一個參數作為尾閉包是沒有意義的。

還有哪些東西吸引了的眼球?給我留言或者發個推吧!

本文由 SwiftGG 翻譯組翻譯,已經獲得作者翻譯授權,最新文章請訪問 http://swift.gg

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 本篇文章翻譯自:What’s New in Swift 3?原作者:Ben Morrow on June 15, ...
    matrix_lab閱讀 1,713評論 4 9
  • 初見swift 打印‘hello world' print("hello world"); 教程 類型 基礎類型:...
    PanPan1127閱讀 855評論 0 2
  • 發現 關注 消息 iOS 第三方庫、插件、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 12,245評論 4 61
  • 錢鐘書先生說,我都姓了一輩子錢了,難道還迷信這東西嗎? 可是對于我們小屌絲而言,有誰跟錢過不去嗎,請舉手! 姑娘,...
    梧桐媽閱讀 263評論 0 1