iOS底层提升方案

下方学习大纲大家可以参考学习《OC底层、核心编程探索》专栏的索引。

OC底层探索

  • OC对象占用内存原理

  • OC对象 最少占用 16 个字节内存.

    当对象中包含属性, 会按属性占用内存开辟空间. 每一行 16 个字节中, 剩余内存如果可以放下剩余其中一个属性 (参考倒数第二张图) , 则会在行末存储 (注意: 并非一定是按照定义顺序来开辟空间, 放不下就开辟这样). 放不下时会重新开辟一行存储.
    最终满足 16 字节对齐标准.

Runtime & 环境搭建

  • objective C语言把能在编译期做的事情就推迟到运行期再决定。这就意味着,Objective C不仅需要一个编译器,而且需要一个运行期环境。这个运行期环境就是Runtime。

  • runtime源码目录结构

  • include 文件夹是我们引入的项目需要的依赖文件

  • Private Headers 从字面意思了解,是私有的一些方法

  • Project Headers runtime项目中会用到的头文件

  • Obsolete Headers 一些孤立的文件,大部分可删,只有hashtable2.h的文件会被其他文件使用到。

  • Obsolete Source 无实质用处,可全删

  • Source目录,是runtime的实现文件集合,后面的文章主要是研究这个目录。

核心编程探索

底层进阶Block

iOS--多线程

核心优化

收录地址:mp.weixin.qq.com/s/b0dBzh-Wi…