一、介绍
Swift 是苹果公司从 2010 年 7 月开始研发直至在 2014年 8 月苹果全球开发者大会上发布 v1.0 版本,至今共发布了 5 个大版本,主要应用于 iOS、OS X、Apple TVOS 和 watchOS 应用编程。
二、Swift 5
Swift 5 让 app 的发布操作变得无比轻松简单。Swift 的运行时现已内建在 iOS、macOS、Apple TVOS 和 watchOS 中,您的 app 无需再捆绑这些最新版 OS 的资料库。用户从 App Store 下载由 Swift 构建的 app,内存更小,下载更快。
三、历史版本及特性
2014.7: Swift v1.0
2015.9: Swift v2.0; 12月份源码开房
- Error handing 增强:v2.0 版本以前使用 NSError 做异常的判断,从 v2.0 版本开始方法可以使用 throws 关键字抛出异常调用出使用 do try catch 进行捕获处理
- 增加 guard 语法:类似于 Assert 的使用,但是是不满足条件下退出而非崩溃
- 协议支持扩展:协议扩展中可添加一些属性和方法,也可以定义一些方法的默认实现及属性赋值。这样可以使 Swift 更好的面向协议编程
2016.9: Swift v3.0
- GCD 和 Core Graphics:新的面向对象的CGD
- 移除 NS 前缀:Foundation 库中移除 NS 前缀(例:NSURL => URL)
- 内联序列函数 sequence:使用它们可以返回一个无限序列
- 新增 fileprivate 和 open 两个权限控制:相当于对 public、private 的细化,拓展中要想访问私有属性需要使用 fileprivate 修饰
- 移除弃用属性: ++、-- 改为 +=、 -= ...
2017.9: Swift v4.0
- extension 中可以访问 private 属性:相当于去除了 fileprivate 属性
- 类型和协议的组合类型:使用 & 运算符讲类型与协议组合成新的类型
- Associated Type 可以追加 Where 结束语句
- 新的 KeyPath 语法:直接用 \ 作为开头创建 KeyPath
- 下标支持泛型
- 字符串增强
2019.3: Swift v5.0
- ABI 稳定
- Raw strings
- 标准库新增 Result
- 支持可动态调用的类型
网友评论