Swift介绍(基于Swift4版本)
Swift是为macOS、iOS、watchOS和tvOS设计的一门编程语言。简单易学、语法简单,交互性强都是它的特点。在设计这门语言时,就很注重考虑它的安全性,而且编译运行时也是非常的轻量快速。
Swift 4 是基于Swift 3 上的加强版本,带来更好的健壮性和稳定性。并且可以兼容Swift 3 的源代码。并对标准库进行了升级,带来了新的特性,比如smart key paths和serialization,而且大幅度的降低应用的编译时间以及应用的包大小。
在Swift Playgrounds中,你可以创建一段playgrounds的程序代码,它可以实时编译并快速的展示运行结果。甚至可以用playgrounds的代码来通过蓝牙控制机器人等硬件设备。正因为简单并且实时的交互性,可以更加激发学习者的兴趣,去创造更多有意思的东西并掌握这门语言。
开源
Swift 4 是在Swift.org平台上开源开发的,包含具体的源代码,bug跟踪日志,邮件反馈列表以及常规的开发编译工具。这些都是对所有人开放的。在活跃的开发社区中,既有苹果内部的开发者,也有外部的开发者。他们合力协作,让Swift语言越来越惊艳。Swift早已经支持苹果的所有平台,并且也支持Linux平台,并且社区中的人还继续努力,让Swift可以支持更多的平台,这是非常值得期待的,因为Swift是一门有趣的语言!
代码兼容模式
Swift 4 是向前兼容Swift 3 代码的。所以在使用Swift 4 ,不需要修改你之前的Swift代码就可以在新的编译器上运行。你可以根据自己的需要,移植你的代码到新的Swift 4 编译器上,并且享受Swift 4 带来的新特性。
你可以使用Swift 4 编译器中的三种模式:
- Swift 3 编译器模式。这是默认的模式,会使用Swift 3 的编译器去编译代码。
- Swift 4 编译器模式。这个模式下,你可以使用到Swift 4 的许多新的功能以及性能优化的体验。有些地方可能需要进行代码移植,但是这个从Swift 3 到Swift 4 的移植比起之前从Swift 2.2 到Swift 3 的移植要简单轻松的多。
- 混合模式。这个模式可以让开发者进行Swift 3 和Swift 4 的混合编译。这样可以让开发者逐步慢慢的去迁移Swift 3的代码到Swift 4 上。
Swift 4 新特性
- 更快速简单的使用Strings。其中包裹Unicode检查,子串的创建使用等操作。
- Smart key paths特性为Swift的类型提供了类型安全检查、高效并且具有可扩展的键值编码(KVC)。
- 对创建、操作字典集合类型进行了优化提高。
- Extends对数据的序列化、以及序列化成外部的JSON或plist的支持。
- 禁止直接访问内存。
现代化的语言
Swift是集当下编程语言之所长,并且融合了数十年苹果平台的开发经验到其中。它既包含Objective-C语言中的参数前置的表达形式,并且有简单整洁的语法,便于维护和阅读。类型推断让代码更健壮而且不容易发生错误。并且使用了modules和命名空间,这样就把把Headers给淘汰了。内存的自动管理,甚至不需要考虑代码后面的分号。这些超前的想法运用到Swift上,让这门语言更加的简单有趣。
extension String {
var banana : String {
let shortName = String(characters.dropFirst(1))
return "\(self) \(self) Bo B\(shortName) Banana Fana Fo F\(shortName)"
}
}
let bananaName = "Jimmy".banana // "Jimmy Jimmy Bo Bimmy Banana Fana Fo Fimmy"
Swift还有很多的特性让你的代码变得惊艳,比如:
- 闭包与函数指针的统一
- 元组和多返回值
- 泛型
- 对集合在某个范围的快速迭代访问
- 支持函数methods、扩展extensions、协议protocols
- 函数式编程模型,比如map和filter
- 使用try / catch / throw对本地的错误异常处理。