iOS 面试必看
文章平均质量分 75
iOS 面试核心基础
努力修福报
这个作者很懒,什么都没留下…
展开
-
iOS - 多线程-GCD总结
使用规则总结本地多个异步任务使用:队列组或者enter网络多个异步任务使用:enter网络多个异步任务互相有依赖关系需要同步执行:semaphore线程安全锁:semaphore多线程的类型参考https://www.jianshu.com/p/f536f9a17d90多线程就是为了让子线程执行网络请求或者耗时任务,让主线程只负责处理UI,提高用户的UI交互体验。线程同步技术:我们需要给数据添加互斥锁,如果给数据加了锁,就等于将这些异步的子线程变成同步的了。互斥锁在iOS开发中的使用O原创 2022-01-30 21:10:56 · 903 阅读 · 0 评论 -
iOS - KVC总结
KVC-键值编码KVC:对象取值或者设置值。KVO:监听对象值的变化。获取对象值的优先级OC对象的属性是由3部分组成的,包括成员变量,setter方法,getter方法。KVC原理图KVC取值优先级1,查找对象的相关方法(getName,name,isName)。2,看对象+(BOOL)accessInstanceVariablesDirectly的返回值,YES就查找成员变量,NO就报异常。3,成员变量优先级。例如获取name的值PersonModel *model = [[Per原创 2022-01-30 21:13:35 · 142 阅读 · 0 评论 -
iOS -KVO总结
KVO-键值观察KVC:对象取值或者设置值。KVO:监听对象值的变化。响应式编程的一种。KVO的使用非常简单,使用KVO的要求是对象必须能支持kvc机制——所有NSObject的子类都支持这个机制。KVO观察的实际是属性的setter方法,成员变量的改变不能被观察到。KVO的实现原理如下在调用addObserver方法的时候,实现了以下步骤1,利用runtime动态创建当前类的子类。2,重写子类的setter方法,并在内部回复父类的做法。3,动态修改当前类的类型,让他变成子类的类型。(以原创 2022-01-30 21:12:40 · 289 阅读 · 0 评论 -
iOS -Runtime原理与应用总结
简介RunTime简称运行时。OC就是运行时机制,其中最主要的是消息机制。OC的函数,属于动态调用过程,在编译的时候并不能决定真正调用哪个函数,只有在真正运行的时候才会根据函数的名称找到对应的函数来调用.消息机制objc_msgSend,只有对象才能发送消息,因此以objc开头.// 调用对象方法 [p eat];// 本质:让对象发送消息 objc_msgSend(p, @selector(eat));// 用类名调用类方法,底层会自动把类名转换成类对象调用 // 本质原创 2022-01-30 21:16:21 · 269 阅读 · 0 评论 -
iOS-Runloop原理与应用总结
Runloop:运行循环-死循环主要目的:提高性能,有事情就干,没事情休眠。参考https://blog.csdn.net/callauxiliary/article/details/107419854主要应用1,保证线程一直运行,处理事件,比如触摸事件,时钟事件,都是由runloop完成。2,优化卡顿:将一次runloop执行完的任务,放到多次runloop中执行。3,UI滑动时计时不准确的问题,设置定时器的Mode为:NSRunLoopCommonModes。4,需要在线程上使用perfo原创 2022-01-30 21:14:32 · 655 阅读 · 0 评论 -
iOS -ReactiveCocoa-基础
1.ReactiveCocoa简介ReactiveCocoa(简称为RAC),是由Github开源的一个应用于iOS和OS开发的新框架,Cocoa是苹果整套框架的简称,因此很多苹果框架喜欢以Cocoa结尾。安装:https://www.jianshu.com/p/57a0d69b98f0 use_frameworks! pod 'ReactiveCocoa' pod 'ReactiveObjC'//完成之后去除Swift(要一起导入才能拉下来),只保留ReactiveObj原创 2022-01-30 21:19:23 · 424 阅读 · 0 评论 -
iOS -ReactiveCocoa-进阶
1.ReactiveCocoa常见操作方法介绍。1.1 ReactiveCocoa操作须知所有的信号(RACSignal)都可以进行操作处理,因为所有操作方法都定义在RACStream.h中,而RACSignal继承RACStream。1.2 ReactiveCocoa操作思想运用的是Hook(钩子)思想,Hook是一种用于改变API(应用程序编程接口:方法)执行结果的技术.Hook用处:截获API调用的技术。Hook原理:在每次调用一个API返回结果之前,先执行你自己的方法,改变原创 2022-01-30 21:20:42 · 126 阅读 · 0 评论 -
iOS-MVVM与RAC
1.介绍MVVM架构思想。2.1 程序为什么要架构:便于程序员开发和维护代码。2.2 常见的架构思想:MVC M:模型 V:视图 C:控制器MVVM M:模型 V:视图+控制器 VM:视图模型MVCS M:模型 V:视图 C:控制器 C:服务类VIPER V:视图 I:交互器 P:展示器 E:实体 R:路由 (http://www.cocoachina.com/ios/20140703/9016.html)2.3 MVVM介绍模型(M):保存视图数据。视图+控制原创 2022-01-30 21:21:58 · 473 阅读 · 0 评论