这应该算是序言吧 ^ V ^
关于Runtime,大家都应该知道怎么使用:
- 利用Runtime的特性很方便的实现Model、Dictionary互转
- 利用Runtime的黑魔法Swizzle替换系统的方法
- 利用Runtime关联对象在Category中添加属性
我们可以利用Runtime做很多事。。。
但是里面具体是怎么实现的呢?我们只能从objc库中看到几个public的.h文件,具体的实现全部都封装在了objc库中,虽然我们不能从xcode中直接看到objc的源码,但是苹果还是在官网开放了源码给我们:
苹果官方objc源代码
苹果官方源码下载
我为什么想写这个系列呢,因为网上很多文章都是讲Runtime的用法,也有一些文章讲解了一些源码,但是依靠有限的几篇文章,并没有让我真正理解Runtime,最后还是自己慢慢去看源码才真正了解里面的具体实现过程,所以我想把我通过源码认识到的Runtime分享给大家,也是为自己做个笔记(毕竟好记性还是不如烂笔头)。
OK,开始进入正文吧
解读objc源码目录
网友评论