做者: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。