Swift和Objective-C的优缺点对比

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift和Objective-C的优缺点对比相关的知识,希望对你有一定的参考价值。

参考技术A

Swift和Objective-C共用一套运行时环境,Swift的类型可以桥接到 Objective-C (下面我简称OC),反之亦然

其次就是, OC之前的积累的很多类库,在Swift中大部分依然可以直接使用 ,当然,Swift3之后,一些语法改变了很多,不过还是有迹可循的。OC出现过的绝大多数概念,比如引用计数、ARC、属性、协议、接口、初始化、扩展类、命名参数、block等,在Swift中继续有效(可能最多换个术语)。Swift大多数概念与OC一样。当然Swift也多出了一些新兴概念,这些在OC中是没有的,比如泛型、元组。

但是:现阶段Swift能完全取代Objective-C吗?
答案是还不行。
其实到现在为止Swift离完全替代Objective-C还是很遥远,因为Apple内部一直在用 Objective-C 来做一些Framework的开发,底层也不可能用Swift实现,所以现在更多的替代是体现在外部开发。

Objective-C中循环引用也是遇到比较多的,一不小心就会导致循环引用,甚至导致内存问题

Swift

Objective-C

以上是关于Swift和Objective-C的优缺点对比的主要内容,如果未能解决你的问题,请参考以下文章

如何将 RxSwift 用于 Objective-C 和 Swift 项目?

swift入门学习-与Objective-c的对比

无法在框架项目的 Objective-C 代码中导入 Swift 类

在 Objective-C 代码中使用 Swift 的缺点?

在 Objective-C 代码中使用 Swift 的缺点?

Swift 对象的安全内存