首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
底层
订阅
框框
更多收藏集
微信扫码分享
微信
新浪微博
QQ
7篇文章 · 0订阅
fishhook的实现原理浅析
早些时候,iOS中一提到“黑魔法”、HOOK,很多人第一时间想到的就是 AOP RunTime MethodSwizzling 这些不明觉厉的东西,它们的基本用法其实都不难,真正难的是如何在合适的地方用好它们。 任何事物都有两面性,越强大其可能带来的隐患也越具有毁灭性。苹果提供…
深入理解 iOS 启动流程和优化技巧 下
Apple 推荐的启动时间(这里指的是冷启动)最好在 400 ms 左右。最大不能超过 20 s,超过 20 s 会被系统杀掉。 这里的启动时间指得是从用户点击应用图标到启动图消失的第一帧。包含 main 函数加载之前和 main 函数加载之后到第一个 ViewControll…
抖音品质建设 - iOS启动优化《原理篇》
启动是 App 给用户的第一印象,启动越慢用户流失的概率就越高,良好的启动速度是用户体验不可缺少的一环。启动优化涉及到的知识点非常多面也很广,一篇文章难以包含全部,所以拆分成两部分:原理和实践。 本文从基础知识出发,先回顾一些核心概念,为后续章节做铺垫;接下来介绍 IPA 构建…
iOS 编译全过程
这几天看了下编译过程,记录方便查阅及备份。主要内容来源于网路,包含以下知识点: 理论上一个语言对应一个编译器,这样就引入了中间优化器,可以接受多种语言,然后输出对应的机器语言,这样前端只负责输入,后端负责输出即可,新增一种语言,就在中间优化层增加逻辑即可。 接着执行./main…
iOS 从源码解析Runtime (一):Tagged Pointer知识点解读
2013 年 9 月,苹果首次在 iOS 平台推出了搭载 64 位架构处理器的 iPhone(iPhone 5s),为了节省内存和提高运行效率,提出了 Tagged Pointer 概念。下面我们逐步分析 Tagged Pointer 的优点以及结合源码分析它的实现。在 obj…
iOS Category 底层实现原理(一):概念与数据结构
extension 和 category 不同,extension 可以声明方法、属性和成员变量,但一般是私有方法、私有属性和私有成员变量。 category 拥有 .h 和 .m 文件,extension 则不然,extension 只存在一个 .h 文件,或者只能 “寄生”…
iOS weak 底层实现原理(一):SideTable、weak_table_t 结构分析
为了全面透彻的理解 weak 关键字的工作原理,现在从最底层的数据结构开始挖掘,力求构建一个完整的认知体系。