kotlin下载!Android开发者跳槽指南学习路线+知识点梳理

前言

作为一个程序员,性能优化是无法避开的事情,并且性能优化也是软件系统中最有挑战的工作之一,更是每个工程师都需要掌握的核心技能

性能问题和Bug不同,后者的分析和解决思路更清晰,很多时候从应用日志即可直接找到问题根源,而性能问题,其排查思路更为复杂一些。

对App进行性能优化,是一个系统性的工程,对工程师的技术广度和技术深度都有所要求。 一个简单的应用,它不仅包含了应用代码本身,还和虚拟机、存储、网络等紧密相关,线上应用一旦出现了性能问题,需要我们从多方面去考虑。

但在实际的工作中,很多情况下只能看到症状,却完全不知道该从哪下手去排查和解决它。

与此同时,除了一些低级的代码逻辑引发的性能问题外,很多性能问题隐藏的较深,即便能够排查,排查起来也会比较困难,需要我们对应用的各个子模块、应用所使用的框架和组件的原理有所了解,同时掌握一定的性能优化工具和经验。

下面分享一下我在爱奇艺的面经

面试前的话:在面试时一定不要受前面没有过的面试的影响,一定要有一个好的心态,不要面试还没开始就自己把自己思绪搞乱了

一共进行了4轮面试

爱奇艺一面 50min

项目

  • 主要介绍了以前做过的项目,分析了内存泄漏,线程同步的问题

计算机网络

  • HTTP/HTTPS区别

Android

  • OkHttp框架(里面有那些设计模式)
  • 如何终止一个线程

爱奇艺二面 50min

介绍项目

  • 内存泄漏的来源
  • 有没有做过优化

Android

  • Service的两种启动方式?区别在哪?
  • 性能优化有没有做过?

Java

  • 手写单例模式

算法

  • 删除链表中一个节点

爱奇艺三面 40min

自我介绍

  • 项目
  • 有没有特别擅长的

Java

  • public作用?
  • .java文件名怎么确定?
  • 外部类最多有几个?
  • 内部类最多有几个?
  • 内部类支持嵌套么?
  • 线程池怎么给新建的线程设置名字?
  • 线程池种类?
  • 注解的使用?

Android

  • Activity的启动模式下生命周期
  • Activity A->B的生命周期
  • Handler中怎么实现Looper和线程绑定?
  • 一个线程最多有几个Looper?
  • 多个Looper报的异常?
  • 消息阻塞再次唤醒是什么机制?
  • ThreadLocal是什么?

爱奇艺四面(HR面)

  • 自我介绍下吧
  • 你对公司有什么评价
  • 做了哪些项目
  • 你身边同事和朋友如何评价你呢
  • 如果与同事发生了意见的不一致,你会如何解决呢

关于HR面试

其实早就听说HR面试的最终的录取结果具有一票否决权,在面完前面的技术面试之后,还是很担心的。大概得到以下结论:

  • 诚信至上,所以在简历中不要存在任何虚假信息,企图通过虚假信息得到面试机会的后果得不偿失
  • HR更关注你的表达能力、与同事相处的能力以及对工作的态度
  • 对自己的是否一个明确的职业规划

由于篇幅原因,这份面试宝典已经被整理成了PDF文档,有需要Android面试宝典全套完整文档的麻烦点赞+点击GitHub即可获取资料免费领取方式!

本文在开源项目:GitHub中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md),里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值