Swift简介
- Swift是Apple在2014年6月WWDC发布的全新编程语言,中文名和LOGO是“雨燕”
- 在Swift刚发布那会,百度\Google一下Swift,出现最多的搜索结果是美国著名女歌手Taylor Swift,中国歌迷称她为“霉霉”,现在的搜索结果以Swift编程语言相关的内容居多
- Swift之父Chris Lattner
-Clang编译器作者、LLVM项目的主要发起人
-从Apple离职后,先后跳槽到Tesla、Google
-目前在Google Brain从事AI研究
Swift版本
- 历时5年发展,从Swift1.x发展到了Swift5.x版本,经历了多次重大改变,ABI终于稳定
- API(Application Programming Interface):应用程序编程接口
-源代码和库之间的接口 - ABI(Application Binary Interface):应用程序二进制接口
-应用程序与操作系统之间的底层接口
-涉及的内容有:目标文件格式、数据类型的大小\布局\对齐、函数调用约定等等 - 随着ABI的稳定,Swift语法基本不会再有太大的变动,此时正是学习Swift的最佳时刻
- 截止至2019年6月,目前最新版本:Swift5.1
- Swift完全开源: https://github.com/apple/swift,主要采用C++编写
Swift编译流程
swiftc
- swiftc存放在Xcode内部
Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin - 一些操作
-生成语法树: swiftc -dump-ast main.swift
-生成最简洁的SIL代码:swiftc -emit-sil main.swift
-生成LLVM IR代码: swiftc -emit-ir main.swift -o main.ll
-生成汇编代码: swiftc -emit-assembly main.swift -o main.s - 对汇编代码进行分析,可以真正掌握编程语言的本质