作者:Jesse Squires,原文链接,原文日期:2015.12.24
译者:小锅;校对:numbbbbb;定稿:numbbbbb
正如预期的一样,在圣诞放假期间 Swift.org 的步伐慢了下来。我也在放假期间出去玩耍了一番,所以这篇文章会比较平常的来得短。如果你还没准备好,我强烈建议你从代码中抽身出去享受一下假期,防止过劳(译者注:然而我们并没有放假)。?现在,让我们开始本周简讯!
Commits 以及 Pull requests
@tienex 针对 Linux/armv7 支持提交了一个pull request。
@practicalswift 增加了大量的 测试用例。在写本篇文章的时候,这些改变应该还需要一段时间才会被合并。
@masters3d 合并了一个 pull request,这个 PR 将一些对于 Swift 的常见改变文档化了。这是一个很棒的主意,可以减少重复的建议。在为邮件列表提交建议时,记得要先核对这个列表 。
Doug Gregor 实现了 SE-0001,“允许(基本上)所有的关键字作为参数标签”。这是一个很大的改变。当 Swift 首次发布的时候,我的一个 Objective-C 库使用了 extension:
作为一个参数名称(作为一个文件的扩展名)并且桥接到了 Swift 当中,这导致了很多的问题,所以我只能将它重命名为 fileExtension:
。我十分期待在 Swift 2.2 当中看到这个改变!注意 var
,let
和 inout
关键字被排除在外。
建议
Oisin Kidney 的建议 (SE-0008),为可选类型序列增加一个 Lazy flatMap,已经被 Swift 2.2 接受!?
Kevin Ballard 的建议 (SE-0015),Tuple 比较运算符已经被接受!在写作本篇文章的时候,这个建议的状态还未返回在 GitHub 上。因为这个建议不会影响到现在代码,我猜它应该会加入到 Swift 2.2 当中。?
Joe Groff 提交了一个建议,为 Swift 的属性增加属性行为。你可以在 GitHub 上找到原型。如果你更喜欢在 twitter 中获取这些信息,它在这里。? 简单来讲,这个建议提出了一个大纲,可以使用一个扩展的框架为属性增加不同的属性行为,类似 Objective-C 当中的 atomic
与 copy
。目前,Swift 有些硬编码的针对特定用途的属性行为,比如 lazy
,@NSCopying
,和 willSet
/ didSet
。这个建议主要目的是将这些概念规范和统一起来,使它们跟底层的框架实现方式一致,以使它们可以更方便地进行扩展。开发者甚至可以实现它们自己的属性行为。这听起来实在很酷。一些示例的属性行为包含:lazy, 记忆化(memoization), 延迟初始化(delayed initialization)。
邮件列表
Andyy Hope 开启了一个讨论,建议为枚举增加一个 .allValues
属性,通过这个属性可以将枚举中的所有 case 以数组的方式返回。看起来到目前为止有很多人支持这个观点。Jacob Bandes-Storch 在几周之前也提出过这个想法。我也是这个想法的拥簇者,在之前我就好几次试图写过几次这样的代码了。?
Kevin Ballard 建议 为“一周Swift”建立一个更正式的 newsletter. ? 也许我应该创建一个 swiftweekly.org?
本文由 SwiftGG 翻译组翻译,已经获得作者翻译授权,最新文章请访问 http://swift.gg。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。