这个周末抽空看了WWDC2016关于Swift 3.0的的演讲视频,初步感受了下Swift3.0,Swift3.0相对Swift2.2有很大的变化。
比较重要的演讲是Swift API Design Guidelines和What is new in Swift。Swift3.0的Swift的第3个主要版本,目标是安全,快速和有表现力,也是第一个有开源社区参与开发的Swift版本。由于语法和API改动比较多,Xcode 8.0 Beta提供了migrate迁移工具。这样自有的代码升级Swift3.0就比较方便了,但是,关键是要等第三方开源库升级到Swift3.0啊。
Swift3.0的路线图主要是下面3点:
* Swift API Design Guidelines
* The Grand Renaming
* Mapping Objective-C APIs into Swift
主要目标是明确语言的设计理念,提出了Swifty的概念。以前提出ABI stability(二进制接口稳定)被推迟实现了。
以前从Objective-C移植过来的那些繁琐的函数名终于在Swift3.0中被去掉了,这真是一个好消息,早就受不了那种OC风格的繁琐冗余的函数名了。
可以看到Swift3.0不仅简化了方法名,还提供了一个NSURL的替代URL。
Swift API的设计原则主要有下面三点:
* Clarityat the Point of use is your most important goal
最重要的目标是清晰明确
* Clarity is more important than brevity
明确重于简洁
* Concise Code is consequence of using contextual cues
简洁的代码是使用上下文线索的结果
总之,Swift3.0的这次升级变化还是挺大的,语法更加明确和简洁,以前Objective-C那些繁琐的方法名也被替代了,在开源社区的帮助下,向着现代化跨平台通用编程语言的目标又近了一大步。
最后值得一提的是IBM在Swift服务端的工作,发布了IBM Swift SandBox,就是个基于Swift3.0 linux版本的在线Playground。IBM还发布了一个基于Swift的类似Node.js Express框架的Web开发和服务器框架Kitura。