OC部分原理参考

作者: RunningDu | 来源:发表于2016-05-17 17:26 被阅读74次

1.RunLoop

深入理解RunLoop
RunLoop 视频
RunLoop第一讲 视频
RunLoop实战 视频

Paste_Image.png Paste_Image.png

2.Runtime 及 消息转发

Paste_Image.png

Objective-C Runtime
谈Runtime机制和使用的整体化梳理
Objective-C特性:Runtime
理解 Objective-C Runtime
iOS:学习runtime的理解和心得
Runtime 标哥的技术博客

Objective-C 中的消息与消息转发
Objective-C消息转发

消息发送过程:
1. 首先根据receiver对象的isa指针获取它对应的class
2. 优先在class的cache查找message方法,如果找不到,再到methodLists查找
3. 如果没有在class找到,再到super_class查找
4. 一旦找到message这个方法,就执行它实现的IMP。
5. 如果没有找到则尝试方法解析器:
调用+ resolveInstanceMethod: 或+ resolveClassMethod: 方法,添加方法的实现。如果你添加方法并返回YES,那系统在运行时就会重新启动一次消息发送的过程
6. 如果resolveInstanceMethod 方法返回NO ,运行时就跳转到下一步:**消息转发**
如果目标对象实现- forwardingTargetForSelector:方法,系统就会在运行时调用这个方法,只要这个方法返回的不是nil或self,也会重启消息发送的过程,把这消息转发给其他对象来处理
7. 如果未实现上述消息转发则调用methodSignatureForSelector:,创建一个NSInvocation对象并调用-forwardInvocation:方法

3. OBJC类和对象

Objective-C 中的类和对象

4. Objective-C block的实现原理

谈Objective-C block的实现
iOS OC语言: Block底层实现原理
objc 中的 block
正确使用Block避免Cycle Retain和Crash

5. SDWebImage

SDWebImage 实现过程

6. 推送

iOS推送之远程推送

7.GCD

GDC使用
GCD 深入理解:第一部分
GCD 深入理解:第二部分

8.KVO实现原理

KVO实现原理

9.+load() 与 + initialize()

iOS - + initialize 与 +load
NSObject的load和initialize方法

10.layoutSubviews和drawRect

UIView中的layoutSubviews和drawRect
UIView的layoutSubviews和drawRect方法

11. CALayer 和 UIView的区别和联系

CALayer 和 UIView的区别和联系

12. iOS 响应者链,事件的传递

iOS 响应者链,事件的传递

13. copy和mutableCopy

copy和mutableCopy

更新中。。。

相关文章

  • OC部分原理参考

    1.RunLoop 深入理解RunLoopRunLoop 视频RunLoop第一讲 视频RunLoop实战 视频 ...

  • iOS--OC底层原理文章汇总

    OC底层原理01—alloc + init + new原理OC底层原理02—内存对齐OC底层原理03— isa探究...

  • 2021-04-19

    关于oc 关联对象的实现原理 参考文章:https://www.jianshu.com/p/da75ea8224bb

  • OC底层原理汇总

    OC底层原理(一).alloc实际调用流程分析OC底层原理(二).内存分配与内存对齐OC底层原理(三)、isa、对...

  • iOS 类原理探索:类的结构分析

    OC 类原理探索 系列文章 OC 类原理探索:类的结构分析 OC 类原理探索:类结构分析补充[https://ju...

  • Docker-搭建HA版的Hadoop集群

    Hadoop HA 原理概述: 原理概述部分参考自:https://www.cnblogs.com/qingyun...

  • 64位架构下实例对象占用内存

    参考链接:OC对象占用内存原理 (一文彻底搞懂) 我们知道OC实例对象的指针占用的内存为8字节(isa指针,或者说...

  • 函数和内存管理

    OC每一个方法名是一个SEL ,根据SEL可以查找到函数体存放的内存地址IMP。查找的原理请参考iOS OC运行时...

  • 《iOS的学习笔记》

    一、主要内容 OC部分:程序的启动原理、类的定义、属性、方法、分类、协议、Block等。 UI部分:基础控件、UI...

  • iOS逆向 ---- Hook方法及原理OC篇

    iOS逆向 ---- Hook方法及原理OC篇[iOS逆向 ---- Hook方法及原理OC篇](阅读原文

网友评论

    本文标题:OC部分原理参考

    本文链接:https://www.haomeiwen.com/subject/afsbrttx.html