面试题目汇总
- 2018 - iOS 面试题汇总
- iOS 开发者在面试过程中,常见的一些面试题,建议尽量弄懂了原理,并且多实践
- 2018 iOS面试题系列
- iOS面试知识点整理
- 招聘一个靠谱的 iOS
- iOS面试指南
- 其他方面知识
- 经过阿里,百度一面,二面后,我总结了150道iOS面试题
- 五个案例让你明白GCD死锁
- OpenGL是什么?
- 已经有了__weak 为什么还要保留 __unsafe_unretained ?
- 线程安全和线程不安全理解
- YYCache 设计思路
- 源码解析--YYCache
- 缓存淘汰算法--LRU算法
磁盘缓存最好是把 SQLite 和文件存储结合起来:key-value 元数据保存在 SQLite 中,而 value 数据则根据大小不同选择 SQLite 或文件存储。
- iOS - 揭露Block的内部实现原理
- iOS中__block 关键字的底层实现原理
- Type Encodings
- iOS UILabel根据字符串长度自动适应宽度和高度
- Devicecheck
- 使用atomic一定是线程安全的吗?
- 测试iOS APP 模拟各种网络环境
- iOS-手动实现KVO
- 手动设定实例变量的KVO实现监听
- WKWebView 那些坑
- iOS-离屏渲染详解
- Designated Initializer(指定初始化函数)
- 消息处理之performSelector
- 【iOS类簇】工厂设计模式(Class Cluster)
- iOS 常用的单例模式使用场景有哪些?
- iOS程序执行顺序和UIViewController 的生命周期(整理)
- eager evaluation (及早求值) & lazy evaluation (惰性求值)
- IOS attribute ((warn_unused_result))的含义
- iOS 判断 UITableViewCell 和 UICollectionViewCell 是否移出屏幕
- 进程和线程的区别
- iOS 类别和扩展(Categories和Extensions)实现原理
- 关于inline与static的总结
- iOS Block用法和实现原理
- iOS开发系列-线程同步dispatch_set_target_queue
- 优化 App 的启动时间实践 iOS
自己封装一个网络,如果离开A页面去了B页面,那么A页面的网络请求怎么立即取消
- 详解iOS AFNetworking取消正在进行的网络请求
- [__block能避免循环引用吗]
- iOS分类实现原理
分流三种。
1,集群 - 将并发请求分配到不同的服务器上,可以是业务服务器,也可以是数据库服务器。
2,分布式 - 分布式是把单次请求的多项业务逻辑分配到多个服务器上,这样可以同步处理很多逻辑,一般使用与特别复杂的业务请求。
3,CDN - 在域名解析层面的分流,例如将华南地区的用户请求分配到华南的服务器,华中地区的用户请求分配到华中的服务器。
- 大数据和高并发的解决方案总结
- 线程池,处理高并发问题,处理大数据量的方法
- [高并发处理 App端+服务器端、DB层 加锁+信号量、队列组、栅栏函数? 数据库分表]
- iOS应用程序状态机一共有五种状态
1) drawRect
2) layer.shouldRasterize = true;
3) 有mask或者是阴影(layer.masksToBounds, layer.shadow*);
3.1) shouldRasterize(光栅化)
3.2) masks(遮罩)
3.3) shadows(阴影)
3.4) edge antialiasing(抗锯齿)
3.5) group opacity(不透明)
4) Text(UILabel, CATextLayer, Core Text, etc)...
光栅化(rasterization)
假定屏幕分辨率为1920×1080,在二维屏幕渲染(光栅化)时,内存中frame buffer只保存着1920×1080个屏幕点的颜色,然后一个一个的画到屏幕上。(它的实现方式是以一个1920×1080长的一维数组储存每个顶点的RGB颜色,然后遍历数组画出来)
什么X, Y, Z,什么alpha之类的frame buffer都没有的,在frame buffer里只有3个值:R, G, B。
X, Y, Z, alpha等等属性要在另外的地方存储。
光栅化,就是计算出1920×1080这么长的RGB数组中,每一个RGB的值。
- 什么是光栅化
- 如何理解 OpenGL 中着色器、渲染管线、光栅化等概念?
- 离屏渲染
- iOS 离屏渲染优化(Offscreen Render)
- 面向对象设计原则
- 走向面向对象原则
- ScrollView使用Masonry自动布局
- 使用NSProxy和NSObject设计代理类的差异
- UUID和UDID区别
- NSInteger 与 int的区别
- iOS-singleton(单例)三种创建方式
- iOS 系统提供的单例类 UIDevice也是单例类
- iOS UIKit框架
- xib、nib
- xib、sb一系列文章
- UDID、UUID、IDFA、IDFV
- IDFV+KeyChain(设备唯一标识符)
- Objc中向一个nil对象发送消息会怎样
- [JSON与XML互转]
- [aop、iop、hook、面向协议编程、ioc、反射、依赖注入]
- [RAC、MVVM、MVCS、]
OOA(Object Oriented Analysis) --面向对象分析
OOD(Object Oriented Design) --面向对象设计
OOP(Object Oriented Programming)--面向对象编程
- TCP流量控制与拥塞控制
- TCP 协议有拥塞控制策略,网络为什么还会发生拥塞崩溃?
- ios https 单项认证 双向认证 以及服务端配置
- Https协议简析及中间人攻击原理
- 关于Https安全性问题、双向验证防止中间人攻击问题