首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS底层
订阅
用户379495415129
更多收藏集
微信扫码分享
微信
新浪微博
QQ
9篇文章 · 0订阅
iOS开发·runtime原理与实践: 消息转发篇(Message Forwarding) (消息机制,方法未实现+API不兼容奔溃,模拟多继承)
在我们开始使用消息机制之前,我们可以约定我们的术语。例如,很多人不清楚“方法”与“消息”是什么,但这对于理解消息传递系统如何在低级别工作至关重要。 方法:与一个类相关的一段实际代码,并给出一个特定的名字。例:- (int)meaning { return 42; } 消息:发送…
iOS面试题 - 2022
前言 可能有部分答案不正确,欢迎提出解决方案,本文涵盖OC,Swift,数据结构,算法相关内容 iOS基础 1:讲讲你对atomic & noatomic的理解 原子性访问加不加锁,noatomic属
2021年7月最新iOS面试题总结(答案篇)
(答案不唯一,仅供参考,文章最后有福利) 之前发了这篇iOS面试总结(2020年6月),没想到挺受大家欢迎,本来是没打算为它写答案,但有几个人建议我最好出一篇答案,提的人多了我就答应了下来。因为最近比
深入理解 YYCache
YYCache 是一个高性能的缓存框架,由 ibireme 开发,项目中使用到了 YYCache 作为缓存方案,下面就来掰扯一下它的实现机制,解释它高性能的来由,LRU 算法的实现,使用到的锁,以及删除缓存的时机等,另外还有一些框架我觉得可能存在的问题。 苹果也有自己的缓存方案…
有始有终,设计一个结构合理的下载模块
在着手编码之前,先明确功能需求、技术需求,然后进行初步的思考。 从目标出发,能够帮助明确设计过程中的侧重点。对于下载这个场景,很直观可以想到,它涉及到的文件操作、持久化存储等步骤是会频繁出现在一个项目中的。所以我会希望为下载模块写的大量代码能够被良好复用。同时可以预见,下载这一…
Tip2 - 从源码看 [self class] 和 [super class]
前言 这篇文章起源于很古老的一个面试题,为什么一个类的 [self class] 和 [super class] 的输出是相同的,今天从源码的角度去分析一下。 场景再现: 输出: 源码 既然都是调用的
iOS Runtime详解
我们从下面几个方面探寻Runtime的实现机制。 Runtime其实有两个版本: “modern” 和 “legacy”。我们现在用的 Objective-C 2.0 采用的是现行 (Modern) 版的 Runtime 系统,只能运行在 iOS 和 macOS 10.5 之后…
RunLoop - 同是天涯打工人
前言 没有困难的工作,只有勇敢的打工人。 概念 如果你经历过这么一种上班状态,有需求需要开发的时候,开发需求,没有需求开发(小概率事件),下班也没有真正意义上的下班,因为群里随时有线上问题需要响应,所
iOS底层面试总结
总结不易,耗时耗力,您的一颗小星星✨是我无限的动力。 我们经常会看一些面试题,但是好多面试题我们都是知其然不知其所以然,你如果认真的看了我上面总结的几十篇文章,那么你也会知其所以然。 默认情况下,因为分类底层结构的限制,不能添加成员变量到分类中。但可以通过关联对象来间接实现 2…