runtime的学习

来源:互联网 发布:云南网络零售额 编辑:程序博客网 时间:2024/05/24 15:37
runtime的资料网上有很多了,部分有些晦涩难懂,我通过自己的学习方法总结一遍,主要讲一些常用的方法功能,以实用为主,我觉得用到印象才是最深刻的。另外runtime的知识还有很多,想要了解更多可以看我翻译的官方文档(有点枯燥)

什么是runtime?
runtime 是 OC底层的一套C语言的API(引入 <objc/runtime.h> 或<objc/message.h>),编译器最终都会将OC代码转化为运行时代码,通过终端命令编译.m 文件:clang -rewrite-objc xxx.m可以看到编译后的xxx.cpp(C++文件)。
比如我们创建了一个对象 [[NSObject alloc]init],最终被转换为几万行代码。开这个帖子记录一下看到的一些比较好的runtime的文章。

1、详解Runtime运行时机制
http://www.code4app.com/blog-721976-204.html
(亮点:本文详细整理了 Cocoa 的 Runtime 系统的知识,它使得 Objective-C 如虎添翼,具备了灵活的动态特性,使这门古老的语言焕发生机)

2、OC实用的runtime总结
http://www.code4app.com/home.php?mod=space&uid=721976&do=blog&quickforward=1&id=205
(亮点:通过自己的学习方法总结一遍,主要讲一些常用的方法功能,以实用为主



3、DEMO 按钮点击,利用runtime hook 实现iOS防止按钮连续响应点击
http://www.code4app.com/forum.php?mod=viewthread&tid=7271&extra=page%3D1%26filter%3Dsortid%26sortid%3D1

利用runtime hook 实现iOS防止按钮连续响应点击 可以设置时间间隔,拖进工程立即生效


4、DEMO  runtime 详解
http://www.code4app.com/forum.php?mod=viewthread&tid=8241&extra=page%3D1%26filter%3Dsortid%26sortid%3D1




5、DEMO  iOS Runtime 实践
http://www.code4app.com/forum.php?mod=viewthread&tid=7638&extra=page%3D1%26filter%3Dsortid%26sortid%3D1
(亮点:通过DEMO方式实践iOS中的黑魔法runtime)




6、学习 runtime的简单项目
http://www.code4app.com/forum.php?mod=viewthread&tid=7201&extra=page%3D1%26filter%3Dsortid%26sortid%3D1


7、根据规则跳转到指定的界面(runtime实用篇一)
http://www.code4app.com/forum.php?mod=viewthread&tid=10131&extra=page%3D1%26filter%3Dsortid%26sortid%3D1


8、Objective-C 中的runtime
http://www.code4app.com/home.php?mod=space&uid=800778&do=blog&quickforward=1&id=282
0 0
原创粉丝点击