首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS 原理
订阅
胡萝卜卜
更多收藏集
微信扫码分享
微信
新浪微博
QQ
9篇文章 · 0订阅
Swift引用计数的底层分析
学过swift的基础语法,我们知道类对象有3种引用方式:强引用(strong)、弱引用(weak)、无主引用(unowned)。 我们从上篇文章探索Swift中Class的大致结构,了解了引用计数存放的位置。我们现在写一个小Demo,来看下引用计数的变化: 从1到2到3,可能还…
Swift中闭包底层原理探索
『闭包』是独立的代码块, 可以在你代码中随意传递和使用 。Swift 中的闭包与 Objective-C/C 中的 Block、其他编程语言中的匿名函数相似。 闭包可以从定义它们的代码的上下文中捕获和存储任何变量。这也被称为这些变量和常量被暂时关闭使用。并且 Swift 负责处…
iOS底层 -- dyld是如何加载app的
本文旨在初步了解app启动前系统的行为,主要分析dyld的操作流程,这对于后续做启动优化是很有必要的。 dyld是苹果操作系统的动态链接器。dyld和操作系统的关系准确来说,操作系统通过映射的方式将它加载到进程的地址空间中。操作系统加载完dyld后,就把控制权交给dyld。当d…
分析可执行文件mach-o
Mach-O 是针对不同运行时可执行文件的文件类型。在Windows上.exe(Portable Executable )是可直接执行的文件扩展名,而在Linux(以及很多版本的Unix)系统上ELF (Executable and Linking Format)是可直接执行的…
《iOS开发~仰望天空,脚踏实地!》
底层原理毫无疑问还是iOS开发现在必备能力。 .... ②架构方面: 设计模式、解耦手段、组件化.... 数据结构算法能力占比也比较大。通常一般大公司都会有一些笔试:虽然不在核心岗位对于数据结构算法要求不是非常严格,但是也会有一些常规的数据结构和算法的题 ..... iOS开发…
iOS 逆向 - Mach-O文件
我们对重签名和代码注入有了一定的了解 . 那么这个过程中我们反复提到一个最重要的文件 -- Mach-O . 那么说来说去 , 这个Mach-O 到底是个什么 . 既然它这么重要 , 那么我们有必要去好好的了解一下它 . Mach-O 其实是 Mach Object 文件格式的…
iOS 底层 - OC 对象的创建流程
这样探索下来 , 我们不仅会熟练掌握这些知识点 , 更能对其融会贯通 , 得到苹果为什么会这么设计的根本原因 . 本篇文章从对象的创建出发 , 梳理对象创建流程 , 探索每一个遇到的知识点 . 对象的创建方式 , 最常见的 alloc init , 或者 new . 添加好断点…
iOS Category底层原理详细研究流程
让我们从多个方面来回答这个问题。 Category 是一个 .h 和一个 .m. Extension 是一个 .h . 那么同样, 创建时, 选择对应的类型即可. 如上使用, 发生崩溃. 将 NSObject 修改为 LBPerson , 结果正常. 打印结果: 闪退. 当然,…
iOS 底层 - isa 的前世今生
本篇文章首先讲述 isa 的作用 , 实际数据结构 , 其中不同二进制位存储内容说明 , 包括 isa 优化 , 是否为 TaggedPoint . 然后以引用计数为例实际探索 . 最后讲述 isa 的指向 , 以及 SuperClass 的指向探索 . 其中穿插了一些面试题以…