runtime学习笔记

runtime学习笔记

前言

苹果开源网站上可以下载到runtime源代码。我下载的是objc4-779.1。

之前对runtime有所了解,项目里也有所应用,但是对有些东西总是感觉模棱两可,所以没事的时候看看源码学习学习还是很有必要的。

runtime作为iOS开发底层的一些知识,深入学习能让我们更好的理解类、对象、方法的本质以及他们之间的关系。

下面就是我看源码和查阅资料进行学习整理的笔记。

第一章 阅读主要类的头文件

刚开始我们可能无从下手,打开runtime项目工程,就从最简单的开始,先阅读Public Headers这个文件中的一些类的头文件,学习Class、objc_class等的定义和一些函数的定义和简单实用。

1.1 NSObjCRuntime.h

1.2 NSObject.h

1.3 message.h

1.4 objc.h

1.5 runtime.h

1.5.1 Types
1.5.1.1 objc_method
1.5.1.2 objc_ivar
1.5.1.3 Category
1.5.1.4 objc_property_t
1.5.1.5 objc_class
1.5.1.6 Protocol
1.5.1.7 objc_method_description
1.5.1.8 objc_property_attribute_t
1.5.2 Functions
1.5.2.1 Working with Instances
1.5.2.2 Obtaining Class Definitions
1.5.2.3 Working with Classes
1.5.2.3.1 Working with Instances(一)
1.5.2.3.2 Working with Instances(二)
1.5.2.4 Instantiating Classes
1.5.2.5 Adding Classes
1.5.2.6 Working with Methods
1.5.2.7 Working with Instance Variables
1.5.2.8 Working with Properties
1.5.2.9 Working with Protocols
1.5.2.10 Working with Libraries
1.5.2.11 Working with Selectors
1.5.2.12 Objective-C Language Features
1.5.2.13 Associative References
1.5.2.14 Hooks for Swift
1.5.2.15 Hooks for Swift

1.5.3 Obsolete types

1.5.4 Obsolete functions

第二章 runtime基础知识

2.1 类对象、实例对象、isa指针

最后

学习是一个循序渐进的过程,关于runtime的学习也是一样,从了解表面到深入源码实现,需要我们再进一步慢慢咀嚼。

学习顺序如下:

runtime学习笔记(一)
runtime学习笔记(二)NSObjCRuntime.h
runtime学习笔记(三)NSObject.h
runtime学习笔记(四)message.h
runtime学习笔记(五)objc.h
runtime学习笔记(六)类对象、实例对象、isa指针
runtime学习笔记(七)runtime.h - Types
runtime学习笔记(八)runtime.h-Functions-Working with Instances
runtime学习笔记(九)runtime.h-Functions-Obtaining Class Definitions
runtime学习笔记(十)runtime.h-Functions-Working with Classes (一)
runtime学习笔记(十一)runtime.h-Functions-Working with Classes (二)

推荐阅读:

深入浅出Runtime (一) 什么是Runtime? 定义
Runtime - class
Runtime内存模型探究
Objective-C Runtime 运行时之三:方法与消息
Runtime
轻松学习之 IMP指针的作用
runtime - iOS类对象、实例对象、元类对象
格物致知iOS类与对象
Objective-C Runtime 运行时之一:类与对象

这是一些有关runtime博客,可以进行阅读学习,选择性吸收。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Morris_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值