Swift版本历史和各版本特性

2019-11-28  本文已影响0人  Travelcolor

发展历史

- 大约在2010年7月,苹果开始研发Swift语言
- 从2014年至今,已经有15个版本发布,其中有5个大版本,10个小版本
/**
1.0版本:2014年8月
2.0版本:2015年9月(年底12月开源)
3.0版本:2016年9月
4.0版本:2017年9月
5.0版本:2019年3月
5.1版本:2019年6月
*/
  • Objective-C 从80年代发布至今,只有两个版本
  • Swift 2015年12月正式开源,目前Swift可以应用到多个领域,甚至连TensorFlow也有Swift语言版本

Swift 2
  1. Error handing增强
  2. guard 语法
  3. 协议支持扩展 等等
Swift 3
  1. 新的GCD和Core Graphics
  2. NS前缀从老的Foundation类型中移除
  3. 内联序列函数sequence
  4. 新增fileprivate和open两个权限控制
  5. 移除了诸多弃用的特性,比如++、-- (两个--) 运算符等(因为和加1减1没有区别)
  6. 增加区间运算符
Swift 4
  1. extension中科院访问private的属性
  2. 类型和协议的组合类型
  3. Associated Type可以追加Where约束语句
  4. 新的Key Paths语法
  5. 下标支持泛型
  6. 字符串增强 等等
Swift 5
  1. ABI稳定(意味着Binary interface稳定,运行的时候只要使用Swift5以上的编译器,编译出来的Binary,都可以跑在Swift5以上或者runtime上面,不用在App中放一SwiftRuntime,放了SwiftRuntime会使包变的非常大)

一些疑问:

  • Apple什么时间发布用Swift写的系统框架,目前GCD、Core Framework等,用C或者OC来编写的
  • Apple什么时间会提供Swift Only API
  • Apple什么时间开始锁定Objective-C 的SDK,不再新增API
  • Apple什么时间会用Swift的特性来更新Objective-C的SDK
  1. Raw strings
  2. 标准库新增Result
  3. 定义了与Python或Ruby等脚本语言互操作的动态可调用类型
  4. ......

API(Application Programming Interface):应用程序编程接口

ABI (Application Binary Interface):应用程序二进制接口


Swift完全开源:https://github.com/apple/swift,主要采用C++Swift编写

上一篇下一篇

猜你喜欢

热点阅读