首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
iOS底层原理-九阴真经
Coder_张三
创建于2021-12-04
订阅专栏
收集一些iOS底层原理的文章。
等 79 人订阅
共21篇文章
创建于2021-12-04
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
iOS九阴真经:二十一、组件化
组件化也叫模块化,是指将应用程序分解为独立、可重用、可交互模块的开放策略,这种方式有助于提高代码复用率、降低耦合度,使得应用程序更易于维护和扩展。
iOS九阴真经:二十、KVO 原理探索和自定义 KVO
键值观察是一种机制,它允许对象在其他对象的指定属性发生更改时得到通知。这篇文章从如何使用 KVO 一步一步的深入 KVO 的原理,最后根据原理来实现自定义 KVO。
iOS九阴真经:十九、深入了解 KVC
KVC(Key-Value Coding)是一种由NSKeyValueCoding非正式协议启用的机制,对象采用该机制来提供对其属性的间接访问。当对象符合键值编码时......
iOS九阴真经:十八、消息传递:消息转发流程
在 Objective-C 中,当我们调用一个方法的本质是消息传递,那么消息传递在经过快速查找->慢速查找->动态方法解析三个流程之后,还是没有找到该方法的实现。那么接下来会进入下一个流程......
iOS九阴真经:十七、消息传递:动态方法解析流程
lookUpImpOrForward 函数为慢速查找流程的入口,进入慢速查找流程后,仍未找方法的实现,会进入下一个流程-动态方法解析......
iOS九阴真经:十六、消息传递:慢速查找流程
objc_msgSend 函数在进行消息传递的过程中,会先进行快速查找缓存方法,快速查找缓存方法是用汇编实现,其汇编函数名为 CacheLookup 。如果 CacheLookup 函数......
iOS九阴真经:十五、消息传递:快速查找流程
OC 中调用方法的本质是消息的传递,通过 objc_msgSend 函数进行消息传递。那么在 objc_msgSend 的汇编流程中,最终会调用一个 CacheLookup 汇编函数......
iOS九阴真经:十四、objc_msgSend 函数汇编流程
在 OC 中调用方法,在运行时是由 objc_msgSend 函数进行消息传递,从而调起对象方法。在官方文档中也只是介绍了 objc_msgSend 函数的作用,但底层......
iOS九阴真经:十三、初识 objc_msgSend 函数
iOS的runtime是指 Objective-C 将尽可能多的决策从编译时和链接时推迟到运行时......
iOS九阴真经:十二、cache_t - insert 函数分析
我们知道 cache 缓存的是类的方法,那么 cache_t 的缓存函数在哪里,又是怎么实现的呢......
iOS九阴真经:十一、cache_t 分析
在分析类的结构时我们知道类中有 cache 这个成员变量,通过名称我们大概能猜到是缓存,但缓存什么呢......
iOS九阴真经:十、class_ro_t 的探索
在 WWDC2020中有一个视频讲的是关于Objective—C 在运行时的一些优化,本篇文章是对视频中讲到的的部分知识进行探索......
iOS九阴真经:九、关于WWDC2020-Objective-C运行时的改进
在 WWDC2020 中 Objective-C 运行时的改进这个视频提到关于类的的数据结构的一些变化......
iOS九阴真经:八、class_rw_t 探索
我们接下来去分析类的 class_rw_t是否存储着对象的属性,方法等相关的信息,并且对元类存储信息......
iOS九阴真经:七、Class的结构
在前面的探索中,已知Class本质上是一个结构体指针,是 objc_class* 的别名,而objc_class继承至objc_object......
iOS九阴真经:六、Objective-C 对象的结构分析
通过分析对象的本质得知实例对象的isa指向类对象,那类对象的isa呢,我们接下来就对 isa 的流程进行分析......
iOS九阴真经:五、nonPointerIsa分析
下面是我们对类中的 isa 的探究,OC 的 isa 有什么用,来看一下 isa 的源码实现......
iOS九阴真经:四、Objective-C 对象的本质
Objective-C 的面向对象都是基于 C/C++ 的数据结构实现的。 Objective-C 的对象,类主要基于 C/C++ 的结构体实现的。 一、 clang Clang是⼀个......
iOS九阴真经:三、内存对齐
通过 alloc源码的探索,已经知道,系统在分配给OC对象内存大小的时候是以16字节对齐的规则进行分配的。 另外,影响对象内存大小的因素是对象的成员变量,方法并不占用对象的内存......
iOS九阴真经:二、alloc的流程
在进行源码跟踪之前先了解一下以下的三个方法: sizeof,class_getInstanceSize,malloc_size。
下一页