iOS面试分享

OC基础

1.kvo、kvc原理
2.runtime、runloop 应用场景
3.GCD NSOperation NSThread
4.有些什么锁,区别是什么
5.默认关键字 各个关键字的作用
6.引用计数表 weak表
8.NSURLSession NSURLConnecttion
9.block原理
10.wkwebview和UIwebview区别 都有什么坑?
11.NSUrlprotocol
12.js和oc交互 有什么方式?
13.响应链
14.delegate block 通知区别 使用场景?
15.category原理 添加关联对象的原理
16.Autorealsepool,Autorealsepool什么时候释放?
17.load 与 initialize 的区别
18.nil、Nil、NULL、NSNull的区别
19.static、const、extern

架构设计

1.mvc、mvvm区别
2.设计模式有哪些
3.设计原则有哪些
4.项目的结构是什么样的
5.打点库怎么设计

  • 采集方式
  • 数据存储
  • 上报策略

6.网络库怎么设计

  • 请求方式
  • 响应处理
  • 缓存处理策略
  • 重复网络请求处理
  • 请求释放

网络

1.tcp、ip 协议分层
2.http https
3.http各版本区别 状态码
4.TCP 为什么三次握手,四次挥手?
5.浏览器输入www.baidu.com回车之后的过程

操作系统

1.进程的地址空间(内存区域分布)
2.进程、线程区别
3.编译的过程是怎么样的

优化

1.包大小优化(资源层面、编译层面、代码层面)
2.组件化
3.启动时长优化(main函数前后,main函数前的过程)
4.内存优化
5.H5加载的优化
6.网络的优化

三方库

1.AF
2.SDWebImage
3.YYCache
4.Model json解析

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。