26届秋招-影石360-客户端面经

8.15 一面(60min):

1.请你做一个简单的自我介绍。 2.你可以简单介绍一下客户端从MVC迁移到MVI的过程? 2/2

3.MVC、MVVM和MVI这几个架构模式的区别?

4.从代码实现层面来看,MVVM的双向绑定机制是如何具体实现的?

5.如何理解MVVM架构中View和ViewModel之间的双向绑定及互相更新机制?

6.MVI和MVP有什么区别?

7.在实现DataBinding时,你遇到过哪些难以处理的场景?比如它可能适用于简单字符串绑定,但在复杂UI数据更新场景中,能发挥多大作用?

8.Databinding比较适用于简单的字符串更新(如Textview相关),但如果遇到需要多次处理数据流的复杂场景,会不会显得过于复杂?

9.你们在采用MVVM之后是怎样去解决DataBinding在复杂业务中不够清晰的问题的?10.你们在MVI架构中是否使用了StateFlow?

11.为什么在实现MVI架构时选择使用LiveData而不是更符合单向数据流特性的Flow?

12.你对MVP、MVVM、MVI它们之间的演变过程有什么看法?你可以简单介绍一下它们为什么会这样演变吗?13.在实际项目开发中,你会经常使用MVVM里的双向绑定功能吗?

14.Android Jetpack中的ViewModel和MVVM架构中的ViewModel是同一个概念吗?

15. ViewModel的生命周期是怎样的?Activity应该了解过吧,那ViewModel跟Activity的生命周期是怎样的关系?16.Vivo手机在Activity因配置变更(如屏幕旋转)被销毁重建时,是如何保留原Activity数据给新Activity使用的?17.你觉得后端和客户端的主要区别在哪里?

18.在多线程开发中,线程安全问题是否可以通过遵循ACID(原子性、一致性、隔离性、持久性)原则来提升线程安全性?19.操作系统线程间共享变量的方式有哪些?

20.除了synchronized,还能用什么方式实现多线程安全?

21.在进程间通信使用共享内存的情况下,数据从进程A传递到进程B的过程中会发生多少次数据拷贝?22.内存映射是通过什么机制实现的?

23.你知道共享内存通信是由哪一个机制实现的吗?

24.一个进程想要读取一个文性,那么这个文件的数据流向是怎样的?操作系统会经过什么样的过程?25.为什么操作系统在实际操作中没有使用减少拷贝操作的机制?26.请简述HTTP和HTTPS的主要区别。27.你有抓过HTTP的包吗?

28.用户与服务器建立连接的过程中具体发生了什么?

29.如果TCP四次挥手中的最后一次ACK确认丢失了,会导致什么问题?30.TCP四次挥手为什么一定要四次?能不能改成三次?

31.你在学校经历中担任过开发项目和竞赛的组长,请问你是如何管理队友的?比如具体采取了哪些团队管理方法或遇到冲突时如何处理?手撕:给定一个二维数组,找出左上角到右下角的最小路径和,

8.18 挂

全部评论
这个面经已经刷到无数次了,到处抄到处复制吗?
点赞 回复 分享
发布于 昨天 15:15 江苏
挂了会发邮件吗?
点赞 回复 分享
发布于 09-04 18:02 湖南
感谢老哥分享
点赞 回复 分享
发布于 09-03 01:22 浙江

相关推荐

评论
2
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务