iOS开发那些事iOS开发常见问题

面试iOS工程师常被问到的20个基础问题

2015-12-24  本文已影响912人  突然自我

今天在逛知乎的时候,看到一个帖子,下面的回答支持最多的是一个技术总监总结的他面试iOS开发工程师,常问的20个非常简单的问题,但能准确答对一半以上的人却非常少。本人看了下,感觉这些问题确实比较基础,之所以很多人很多问题答不上,归根结底还是对基础知识不够重视,掌握得不够牢靠。下面将者20个问题分享出来,大家可以来看看,你可以准确答对几个。

1.什么是arc?(arc是为了解决什么问题诞生的?)

2.请解释以下keywords的区别:assign vs weak, __block vs __weak

3. __block在arc和非arc下含义一样吗?

4.使用atomic一定是线程安全的吗?

5.描述一个你遇到过的retain

cycle例子。

6. +(void)load; +(void)initialize;有什么用处?

7.为什么其他语言里叫函数调用,objective-c语言里则是给对象发消息(或者谈下对runtime的理解)

8.什么是method

swizzling?

9. UIView和CALayer是啥关系?

10.如何高性能的给UIImageView加个圆角?(不准说layer.cornerRadius!)

11.使用drawRect有什么影响?(这个可深可浅,你至少得用过。。)

12. ASIHttpRequest或者SDWebImage里面给UIImageView加载图片的逻辑是什么样的?(把UIImageView放到UITableViewCell里面问更赞)

13.麻烦你设计个简单的图片内存缓存器(移除策略是一定要说的)

14.讲讲你用Instrument优化动画性能的经历吧(别问我什么是Instrument)

15. loadView是干嘛用的?

16. viewWillLayoutSubView你总是知道的。。

17. GCD里面有哪几种Queue?你自己建立过串行queue吗?背后的线程模型是什么样的?

18.用过coredata或者sqlite吗?读写是分线程的吗?遇到过死锁没?咋解决的?

19. http的post和get啥区别?(区别挺多的,麻烦多说点)

20.我知道你大学毕业过后就没接触过算法数据结构了,但是请你一定告诉我什么是Binary search tree? search的时间复杂度是多少?我很想知道!

以上就是iOS工程师面试常被问到的20个基础问题,如果你都能准确答上,那么恭喜你,你确实很优秀。如果你还有不清楚的地方,那就赶紧去找资料了解、学习去吧。

相关文章:《iOS学习之UITableView的常见属性及用法

上一篇 下一篇

猜你喜欢

热点阅读