做者:Erica Sadun,原文连接,原文日期:2015-12-03
译者:Channe;校对:Cee;定稿:千叶知风html
若是你还没看过 Swift 发展路线图,我建议你要好好看一看。目前为止,有四个针对 Swift 3
和一个针对 Swift 2.2
的提议已经被接受,也许其中的某些能让你会心一笑。git
显然,这些提议中最使人振奋的是 API 翻译的改进,旨在废除冗长的 Objective-C
式的风格,造成调用简洁且易读的 Swift
风格。github
看上去显而易见咱们将要和函数柯里化声明说再见了,虽然这是没有语法糖语言共有的特性。这是我能忍受的东西,可是这点改变并不会让我开心起来 — 除此以外彷佛有迫切的缘由去下降语言的复杂度。objective-c
++
和 --
(这是两个减号,不是破折号)运算符也在移除的部分中。它们最初是为了和 C 语言一致而引入的,但它们的结果值一般不会被检查。对大部分开发者来讲,很容易能够用 +=
和 -=
替代它们。swift
最后,var 形式的函数参数将会被移除,由于它们如今的实现是从复制和修改步骤中抽象出来,而这形成了困惑。我以为这不是一个大损失,只是须要你声明一个函数内 var 变量赋值来替代它。api
十分有趣是,除了 ++
和 --
的改变,几乎全部的变动点我都在新书中提到了。app
已经被接受的 Swift 2.2
提案容许你用关键字做为参数标签,这使得如今能够这样声明:ide
func touchesMatching(phase: NSTouchPhase, in view: NSView?) -> Set<NSTouch>
Swift 3.0
承诺会保持 ABI(Application Binary Interface)
的稳定性:「成功保持 ABI 稳定性意味着,即使源代码语言发生了变化,用之后版本的 Swift 开发的应用程序和编译库能在二进制层次上和 Swift 3.0 版本的应用程序和编译库相互调用。」函数
开发团队利用这个机会作个类型系统清理,包括全部语言的小改良,同时「完整完成」基类系统。代码迁移者将把项目从 2.x 版迁到 3.x 版。基础代码或多或少能保证与此次大更新不要紧。post
最终的 API 设计指导原则发布在这个网址。
本文由 SwiftGG 翻译组翻译,已经得到做者翻译受权,最新文章请访问 http://swift.gg。