@wrlqwe
2017-02-15T06:20:49.000000Z
字数 1256
阅读 1056
iOS 笔试题
未分类
语言
Objective-C
语法 & 语言特性
- weak 与 assign 的区别 -> weak 置nil的原理
- 什么时候使用 copy 关键字
- block 使用什么关键字修饰, 为什么
- block 如何修改外部变量
- 同步锁有几种使用方法,各自的优缺点是什么
- kvo 的原理
- Category 可以添加 property 吗,如果可以的话怎么添加
- 如果两个Category添加了同样的方法,但是不同的实现,那调用的是哪个?
- 简述 MRC 与 ARC
- ARC运行时有什么组件
- 如果对一个对象发送一个不存在的消息,如何防止crash(三个机会)
- id 实例的结构
- runtime 常用方法
- 工作中怎么利用runtime的/(AOP)+黑魔法
Swift
语法 & 语言特性
多语言交叉
- Swift 与 Objective-C 交互
- 泛型的关系与区别
- 枚举的关系和区别
- 可选值
- 方法转译
- Module
- Objective-C 与 Swift 比较优缺点
开发经验
系统库
- 如何用GCD同步若干个异步调用?(如根据若干个url异步加载多张图片,然后在都下载完成后合成一张整图)
CoreGraphic
CoreAnimation
Runloop
HTTP 协议
- 有哪些方法
- 有哪些 status code
- 断点续传?
- 客户端跳转(301)和服务端跳转?
Socket 编程
数据存储
- 有哪些方式可以完成数据存储
- 数据库和CoreData
- 数据升级?
- 子查询和join查询的优劣
- 全文索引
解决问题
- iOS卡顿的原因与解决方案
- 借助哪些工具检测卡顿
- SIGSEGV SIGABRT SIGTRAP 都代表什么信息
三方库
App架构
patch
设计模式
算法
- 排序算法 -> 冒泡(堆,桶) -> 快排
- 查找算法
- 自定试题
版本控制
- Git?
- Git工作流?
- SVN?
- Git与SVN区别?
周边语言经验
- Javascript
- Html
- Shell
- 小程序?
- Markdown