3月份网易阿里百度iOS实习面试题

今年开学陆续投了阿里、百度、网易的 iOS 实习生,下面就分享一下我在面试过程中所碰到的题目 (+2表示被问过2次),并根据我自己认为的难易程度分了个类。这些问题如果和网上的面试题目重复,纯属巧合

基础
  • DFSBFS的区别及其使用场景
  • 通知中心和代理的区别
  • weakstrong的区别 +3
  • 什么时候使用到weak?
  • 引用循环(retain cycle)是怎样产生的?
  • Cocoa 有哪些消息传递机制?
  • 简述ViewController的生命周期
  • 什么是RestFul API

中等
  • 谈谈SwiftObjective-C的优缺点 +2
  • n 的阶乘末尾有几个0?
  • iOS 环境下一共有几种多线程编程技术?
  • 现在有一张大图,想让用户下载到一半能取消下载,你应该用哪种多线程方法来实现?
  • weak__unsafe_unretained的区别,__unsafe_unretained的使用场景
  • Block里引用到self的话一定要用weak self吗?
  • 简述Runloop的原理
  • NSTimer只能在主线程上运行吗?
  • UIView在什么时候会调用drawRect:,当我调用setNeedsDisplay后,视图会立刻刷新吗?不会的话是在什么时候刷新?
  • loadViewviewDidLoad的区别
  • 简述Autolayout布局系统的原理
  • idNSObject的区别
  • 用 CocoaPods 的时候,如果一个库依赖AFNetwork 1.1,另一个库依赖AFNetwork 2.0,能够安装吗?冲突是如何解决的?

  • 如何用GCD来实现NSOperation的取消?

开放性问题
  • 用过什么开源框架,读过它们的源码吗?
  • 这个项目你遇到过什么难题,是如何解决的? +3
comments powered by Disqus