各种地方搜集的一些比较火热🔥的面试题

2017-06-27  本文已影响0人  philiha

开始了哈...~~~~

1.MVC具有什么样的优势,各个模块之间怎么通信,比如点击 Button 后 怎么通知 Model?

2.两个无限长度链表(也就是可能有环) 判断有没有交点

3.UITableView的相关优化

4.KVO、Notification、delegate各自的优缺点,效率还有使用场景

5.如何手动通知KVO

6.Objective-C 中的copy方法

7.runtime 中,SEL和IMP的区别

8.autoreleasepool的使用场景和原理

9.RunLoop的实现原理和数据结构,什么时候会用到

10.block为什么会有循环引用

11.有没有自己设计过网络控件? 12.NSOperation和GCD的区别

12.CoreData的使用,如何处理多线程问题

13.如何设计图片缓存?

14.有没有自己设计过网络控件?

15.怎么判断某个 cell 是否显示在屏幕上

16.进程和线程的区别

17.TCP 与 UDP 区别

18.TCP 流量控制

19.数组和链表的区别

20.UIView 生命周期

21.如果页面 A 跳转到 页面 B,A 的 viewDidDisappear 方法和 B 的 viewDidAppear 方法哪个先调用?

22.block 循环引用问题

23.ARC 的本质

24.RunLoop 的基本概念,它是怎么休眠的?

25.Autoreleasepool 什么时候释放,在什么场景下使用?

26.如何找到字符串中第一个不重复的字符

27.哈希表如何处理冲突

28.dSYM你是如何分析的?

29.多线程有哪几种?你更倾向于哪一种?

30.单例弊端?

31.如何把异步线程转换成同步任务进行单元测试?

32.介绍下App启动的完成过程?

33.比如App启动过慢,你可能想到的因素有哪些?

34.0x8badf00d表示是什么?

35.怎么防止反编译?

36.说说你遇到到的技术难点?

37.说说你了解的第三方原理或底层知识?

38.UITableview的数据源为什么是代理。而不是直接引用

39.谈谈你对Objective-C 的动态绑定理解

40.异步网络图片加载的设计思路

41.异步网络接口的缓存机制

42.给定一个 UIView 树,保证每一个结点View的Tag都不相同,让查询从rootView到指定Tag的View树上路径,抽象成多叉树的深度优先搜索来做

43.ARC和MRC。iOS内存管理跟GC的区别

44.单链表给一个指针,删除这个指针指向的节点。要写代码

45.项目框架,分层(很重视),画图表示

46.AFN,URLSession,相互关系

47.AutoReleasepool 的 倾倒方法 和 release方法的区别

48.UIView 做动画方法的底层实现

49.如果有1w张图片要在屏幕滚动显示(每张图片满屏), 至少要几个cell, 如何实现循环滚动

50.平时自己有没有封装过比较复杂的控件

上一篇 下一篇

猜你喜欢

热点阅读