swift 3 -4 的移植相比较swift 2.2 -3来说容易一些
原有API变化不太大,主要体现在API的新增上(归档,实现codable协议就可以使该类型支持编码和解码)
OC 和swift区别
- 优势
1、Swift容易阅读,语法和文件结构简易化。
2、Swift更易于维护,文件分离后结构更清晰。
3、Swift更加安全,它是类型安全的语言。
4、Swift代码更少,简洁的语法,可以省去大量冗余代码
5、Swift速度更快,运算性能更高。
- 劣势
1、版本不稳
2、使用人数比例偏低,目前还是OC的天下
3、社区的开源项目偏少,毕竟OC独大好多年,很多优秀的类库都不支持Swift,不过这种状况正在改变,现在有好多优秀的Swift的开源类库了
4、公司使用的比例不高,很多公司以稳为主,还是在使用OC开发,很少一些在进行混合开发,更少一些是纯Swift开发。
5、偶尔开发中遇到的一些问题,很难查找到相关资料,这是一个弊端。
6、纯Swift的运行时和OC有本质区别,一些OC中运行时的强大功能,在纯Swift中变无效了。
7、对于不支持Swift的一些第三方类库,如果非得使用,只能混合编程,利用桥接文件实现。
联系
1.共用一套运行时环境
2.互相引用混合编程
3.绝大多数概念,比如引用计数、ARC、属性、协议、接口、初始化、扩展类、命名参数、匿名函数等还是继续通用现阶段Swift 到底能不能取代 Objective-C?
其实到现在为止 Swift 离完全替代 Objective-C 还是有一定距离,因为 Apple 内部一直在用 Objective-C 来做一些 Framework 的开发,底层也不可能用 Swift 实现,所以现在更多的替代是体现在外部开发。