Swift 一周简讯 #4

做者:Jesse Squires,原文连接,原文日期:2016.1.7
译者:pmst;校对:numbbbbb;定稿:numbbbbbhtml

假期一晃而过,Swift.org 又从新开始更新东西啦。假若你也是 Apple GitHub 开源项目的跟随者之一,你可能已经注意到了。早前不知为什么我错过了一些重要的东西,直到本周我才发现 SwiftExperimental.swift 这货。目前,它为 Set 集合自定义了大量 unicode 操做(译者注:有 ∈ 、∉、⊂、⊄、⊆ 等等!)。这真是棒极了!我火烧眉毛想要在标准库中看到更多诸如此类的 API 接口。无论怎样,先来看看本周有哪些好玩的东西吧。git

Commits 和 Pull requests

Proposals

Matthew Johns 给出了一个提议旨在改进成员构造器(Memberwise Initializers ,这样翻译会不会有打个人冲动~),目前正在审核中中。正如 Lattner 所说,Swift 当前的 Memberwise Initializers 行为尚存在大量不足之处。因此我感受这个提议颇有可能被接受。函数

有关于“必须使用 self 来存取实例变量”的提议不出意外被咔嚓,拒绝掉了。拒绝的主要缘由有如下三点:flex

  1. 表达有点啰嗦,意图不够清晰ui

  2. 减小 self. 的使用可以预防可能的循环引用(retain-cycle)翻译

  3. 以及开发团队但愿采用这种用法能够简单地经过连接器(linter)来执行它。

Doug Gregor 提交了一个函数命名的建议(译者:很奇怪,页面 404)。原文以下:“Swift 支持一等函数,所以任何函数(或者方法)均可以存储为函数类型的值。然而,Swift 程序中并非全部函数都能命名 —— 你不能在命名同时提供参数列表。” 缺失这个特性绝对是 Swift 中的一个痛点,尤为是在使用 Cocoa 和 Objective-C selectors 时。以上就是提议的概述。

Mailing lists

Doug Gregor 注意到扩展 @objc 协议时发生了一些使人惊讶的行为 —— extension 中的成员在 Objective-C runtime 时竟然没法对外使用。?幸运地是,我在运行时并无遇到这种状况。

最后要说的是,?.运算符在 Swift 中是 “call-me-maybe” 运算符?以上是本周开源周报内容

本文由 SwiftGG 翻译组翻译,已经得到做者翻译受权,最新文章请访问 http://swift.gg

相关文章
相关标签/搜索