首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
iOS面试
乔明
创建于2021-08-07
订阅专栏
iOS面试
等 3 人订阅
共13篇文章
创建于2021-08-07
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
对特效相机的重构方案
存在的问题: 1.使用GPUImage第三方框架,对图片进行渲染, 底层是基于OpenGL实现的 2.链式渲染的方式,多张图片或者多个结果需要依赖的时候,需要自己编写大量着色器代码, GPUImage
项目相关
封装一个下载组件: 下载组件需要满足的功能: 多任务同时进行下载 支持断点续传 任务支持取消,暂停,继续 支持外界可以通过KVO的方式监听任务的进度,状态(完成,失败,下载中,暂停中,等待中) 核心类
Instruments工具的使用
Instruments工具的使用 Leaks检测内存泄露,红色的柱状就是有内存泄露的地方,点击进去可以看到具体的堆栈以及调用方法 Time Profile:用来检测被方法/函数打断的cpu的使用情况,
HTTPS
不可逆加密(单向散列函数MD5,SHA) 比如登录密码 可逆加密:对称加密和非对称加密 1.对称加密DES: 加解密需要的密钥是一样的,加解密速度快,比较常用,但是需要解决秘钥派送问题 2.非对称加密
NSPort线程间通信
1.初始化并设置NSPort的代理 dispatch_async(dispatch_get_global_queue(0, 0), ^{ 执行了btnClick方法后,具体的打印信息如下: 可以传递数
iOS最全的锁
多线程加锁: 自旋锁是忙等,不休眠一直等待,互斥锁是休眠等待 OSSpinLock:自旋锁, 等待锁的线程会一直处于忙等状态,一直占用着CPU资源 初始化: self.lock = OS_SPINLO
算法相关
算法是解决问题的一系列步骤,使用复杂度来衡量算法的效率。时间复杂度(time complexity)就是指令执行的次数,也就是执行消耗的时间。空间复杂度(space complexity)就是消耗存储
优化相关
图像的显示过程:CPU计算好数据,并由GPU渲染为帧缓存,然后视频控制器读取帧缓存,并显示到屏幕。帧缓存有前帧缓存/后帧缓存,GPU计算帧缓存交替存储在前帧和后帧缓存,提高效率。视频显示器发出的垂直同
Block的本质
1.block的原理是怎样的?本质是什么? 2.__block的作用是什么?有什么使用注意点? 3.block的属性修饰词为什么是copy?使用block有哪些使用注意? 4.block在修改NSMu
关联对象的底层原理
关联对象简介: 关联对象就是可以把一个key、value和你的对象给关联起来。 实现关联对象技术的核心对象有: AssociationsManager AssociationsHashMap Obje
OC对象和类的本质
主要是为了应付面试, 所以非常细的内容就不在这里描述,具体不明白的可以在下面评论区留言给我 一、Objective-C的本质 我们平常编写的OC代码,底层实现其实都是C\C++代码,OC对象的底层其实
KVO底层原理和KVC
一、KVO底层原理 KVO的全称 Key-Value Observing,俗称“键值监听”,可以用于监听某个对象属性值的改变。 是用kvo监听对象,对象的isa指针指向了一个中间以NSKVONotif
category的本质
category的底层结构: 其实是一个cateagory_t的结构体,内存中包含了name, class, 对象方法列表,类方法列表,属性列表,协议列表。 注意:这里面是没有成员变量列表的,因为分类