加载动态链接库,进行 rebase 指针调整和 bind 符号绑定;
来自:02 | App 启动速度怎么做优化与监控?
11 人划过
依赖反转原则:方法应该依赖抽象,不要依赖实例。iOS 开发就是高层业务方法依赖于协议。
来自:04 | 项目大了人员多了,架构怎么设计更合理?
6 人划过
虚拟页大小是 16K,那么虚拟页最多能有 2^48 / 2^14 = 16M 个,物理内存为 16G 对应物理页个数是 2^64 / 2^14 = 524k 个。
来自:36 | iOS 是怎么管理内存的?
4 人划过
第三个风险是,交换的方法如果依赖了 cmd,那么交换后,如果 cmd 发生了变化,就会出现各种奇怪问题,而且这些问题还很难排查。特别是交换了系统方法,你无法保证系统方法内部是否依赖了 cmd。
来自:34 | iOS 黑魔法 Runtime Method Swizzling 背后的原理
4 人划过
对于 iOS 系统,IR 生成的可执行文件就是 Mach-O。
来自:05 | 链接器:符号是怎么绑定到地址上的?
3 人划过
Injection 会监听源代码文件的变化,如果文件被改动了,Injection Server 就会执行 rebuildClass 重新进行编译、打包成动态库,也就是 .dylib 文件。编译、打包成动态库后使用 writeSting 方法通过 Socket 通知运行的 App
来自:06 | App 如何通过注入动态库的方式实现极速编译调试?
3 人划过
再看看我们身边那些“厉害”角色,他们并不是样样精通,而是有擅长的领域。从我接触的这些“大神”们的成长经历来看,都是先深挖某一领域,经过大量的学习和实践后理解了编程的本质,从而可以灵活调配和运用自己已经积累的知识。在这之后,他们再探索其他领域时,就做到了既快又深,成了我们眼中的“大神”。
来自:01 | 建立你自己的iOS开发知识体系
3 人划过
放到空闲的 RunLoop 模式里执行,
来自:13 | 如何利用 RunLoop 原理去监控卡顿?
3 人划过
*精彩内容为该课程各文章中划线次数最多的内容
编辑推荐
包含这门课的学习路径
iOS工程师
7门课程 31.2w人学习
看过的人还看了