当前位置: 首页 > 面试经验 >

滴滴:iOS开发,一面面经

优质
小牛编辑
142浏览
2023-08-15

滴滴:iOS开发,一面面经

两次面试的体验都很好,面试官的专业性很高,当遇到不会的问题时也会及时提醒。
一面
时长:约50分钟
无项目问答,直接是iOS基础、操作系统、计算机网络的问答
1. iOS基础
1.1 你使用过Swift,说一下Swift相比于C、C++、OC这些语言,有什么样的特点?
答:安全性(首要)、代码风格现代化、强类型、支持多种类型的编程范式如泛型、函数式编程
1.2 Swift中的类和结构体有什么样的区别?
答:值类型和引用类型、写时复制、内存区域、引用计数、继承、类的属性可变性、协议
1.3 Swift的闭包的类型?逃逸闭包有什么特点?或者说逃逸闭包为什么可以逃逸?
答:逃逸闭包的生命周期比当前的代码块要长,在代码块外也可以被持有,不会回收(答的不是很好)
1.4 Swift方法调用的过程,类的实例、类对象以及方法的存储位置?(只回答了函数派发表,没答上来,我说放在代码段,面试官说不准确)
1.5 iOS中的内存分区是什么样的?
答:代码段、BSS段、数据段、堆、栈等
2. 操作系统
2.1 cpu执行一条语句时,如何取出操作指令和操作数?如何进行寻址?与内存分段分页有什么关系?(没答好)
2.2 进程A中有一个线程,进程B中也有一个线程,这两个线程如何通信?(变相问进程间通信)
答:shell管道、消息队列、共享内存、socket连接
2.3 进程有哪些状态?
2.4 操作系统是如何控制进程的?或者说是一个什么样的结构来管理进程?
答:进程控制块、进程的各个状态的队列
3. 计算机网络
3.1 IP协议是那一层的协议?(差点脱口而出IP层)
3.2 子网掩码的作用?(在到达网络后判断是否是给本子网的数据、子网划分)
4. 数据结构与算法:手撕——翻转链表
5. 反问
5.1 您负责的iOS业务是?(网约车团队,所有的网约车控制逻辑)
5.2 (灵魂拷问)对iOS的未来发展的看法以及跨端技术RN、flutter的态度?
答:不要太过于担心iOS的未来。只要有苹果公司在,iOS就不会势微(喜)。目前滴滴也确实有跨端的业务,然而还是无法替代原生。RN和flutter的体验其实很差,只能承担一些简单的业务,他们没有办法去挑战iOS原生的地位。此外,也要看公司的发展路线和业务。如果是简单一点的,用RN和flutter足够;但是要注重体验,只能是原生。
 类似资料: