面试题:
- weak修饰的对象如何被自动置为nil?
- strong修饰的对象在引用计数变为0时,是实时销毁的吗?
- autoreleasepool的基本原理;
- 哪些情况会造成内存循环引用,给出几个实例;
- 什么情况下需要weakSelf/strongSelf用法?
- __block修饰符在ARC和MRC下有区别吗?
- 自己写带Block参数的方法时需要在方法里复制Block吗? 为什么?
- Objective-C中的Block和Swift中的Closure有什么区别?
- Block有哪几种类型,实现原理有什么区别?
- GCD和NSOperation有什么区别?
- 用GCD实现一个严格的单例模式;
- 使用KVO需要注意哪些地方?
- 使用AFNetworking回掉块中需要考虑循环引用吗?为什么?
- AFNetworking是如何避免Block被提前释放的?
- SDWebImage的缓存机制是怎样的?
- 假如需要开发一个发消息功能,消息的类型有文本/图片/语音等消息,该用什么设计模式?
- 如果希望UITableView滚动时停止播放gif图片,可以如何实现;
- 如何处理UITableViewCell动态行高问题;
- 在Mac上抓过包吗?
- 如何实现下图中的布局效果:
- 手写翻转字符串;
- 手写快速排序算法;
暂时就这么多吧,待我慢慢补充答案.