Swift简介
Swift
版本号
$ xcrun swift --version(查看当前系统版本)
- 1.0 2014年推出的第一个版本
- 1.2 (ABI不稳定)
- 2.0 (不兼容1.2,ABI不稳定)
- 2.2 (可以通过XCode自动将语法变更到swift3.0)
- 3.0 (ABI相对稳定,使用者增加比较快)
特点
- 优于OC,快速,现代,安全,互动
- 取消了预编译指令包括宏
- 可以使用现有的Cocoa和Cocoa Touch框架
- Swift取消了OC的指针的使用
- Swift被简单的形容为 没有 C 的 Object-C
- 舍弃Object-C早期应用Smalltalk的语法,全面改为句点表示法,更加现代
- 提供了类似Java的命名空间(namespace),泛型(generic),运算对象重载(operator overloading)
- Swift 3.0版本 对Foundation框架做了大量调整
- 大部分 去除了 'NS'前缀
- 将绝大部分class转换为struct
与OC对比
-
在Swift中没有
main.m,@UIApplicationMain是程序的入口 -
在Swift中只有
.swift文件,没有.h/.m文件的区分 -
在Swift中,一个类就是用一对
{}括起的,没有@implementation和@end -
每个语句的末尾没有分好,在其他语言中,分好是用来区分不同语句的
- 在Swift中,一般都是一行一句代码,因此不用使用分号
-
与OC的语法对比
- 在OC中
alloc/init对应Swift中() - 在OC中
alloc/initWithXXX对应Swift中(XXX:) - 在OC中的类函数调用,在Swift中,直接使用
- 在Swift中,绝大多数可以省略
self.,但是一般不写,可以提高对语境的理解(闭包会体会) - 在OC中的枚举类型使用
UIButtonTypeContactAdd,而在Swift中分开,操作热键:回车->向右->.- Swift中,枚举类型的前缀可以省略,如:
.contactAdd,但是:很多时候没有智能提示
- Swift中,枚举类型的前缀可以省略,如:
- 监听方法,直接使用字符串引起
- 在Swift中使用
print()替代OC中的NSLog
- 在OC中
不忘初心,方得始终

浙公网安备 33010602011771号