爆赞!Android技术功底不够如何去面试,面试必问

开头

经常会有人问:“现在学习Android开发还有前景?”我的看法是现在只是市场趋于平稳了,对开发人员的要求越来越好了,这并不代表没有前景了。

移动开发不等于App开发,所有新的技术浪潮其实都可以融入到移动开发的体系里,比如IOT、音视频、边缘计算、VR/AR,我们要做的,只是打好基础,随时准备战斗。其次,从心态上,我觉得我们千万不要把时间浪费在纠结问题上,而是应该放在解决问题上。“王者荣耀”“吃鸡”并不能解决我们的焦虑,拥抱变化,才能拥有未来,让我们共勉。

移动端的招聘中高端的职位还是很多的,看了下拉勾上的Android招聘需求,在北京中高级Android开发大多是15k-30k,如何从初级进阶?

最快速的方法就是跟着高手学习

但是究竟企业需要什么样的移动开发人才?移动开发还可以做些什么?我们移动开发者究竟要掌握那些技术才不被淘汰呢?

这期间很多面试经验,正直现在面试季节,分享给大家。有想法和问题的欢迎在评论区留言。

正文

1.面试问得最多的是自定义 View 基本每家都问!

主要问 View 的绘制流程,自定义View的步骤。有时会涉及到细节;比如 PhoneWindow 实例是在哪个类哪个方法中实例化的?Selector 是怎么实现的?View 动画是怎么实现的?为什么移动后点击事件还在原来的位置?

2.Android 系统源码部分(这是大厂特别喜欢问到的)

事件拦截和分发

进程间的通信方式

应用的创建启动流程

Handler 是怎么导致内存泄露的

第三方库的源码,Glide、OkHttp 和 Retrofit 问得比较多,MVC,MVP和 MVVM 开发模式优缺点。

常用设计模式理解问得也多,大公司 Binder 驱动和虚拟机方面问得比较多。

3.数据结构和算法,Java 的常用集合和实现原理

比如 ArrayList ,LinkedHashMap 的实现原理,缓存淘汰策略,红黑树和二叉树,最短路径规划,海量数据筛选,很荣幸的是面试官目前还没有要我手写算法!

4.性能优化

如何检测一段代码的执行时间?

界面卡顿如何修复?

滑动不流畅怎么处理?

50fps 有什么办法可以提高到 60fps?

内存泄露怎么检测?

leakcanay 的原理?

5.线程和线程池,

wait() 和 sleep() 的区别?

同步锁

线程池的参数详解?AsyncTask 源码参数详解?

我能记得的大概就这些了。最后还啰嗦一下,有很多公司标明了,你必须要会 C 和 C++, OpenGL 或 OpenCv 或音视频编解码!这里要小心,我写的是熟悉,因为像音视频和 OpenCv 图像处理这些方面,没做个6、7年最好不要写精通!

来上海感觉学历真的很重要,大公司都要求本科以上,而且要能查的。如果没有学历这是个硬伤了,除非技术很强,或者有内推的话也会看情况而论。

小公司面试官一般不会问你细节,但大公司面试官都会抓细节,所以细节要清楚,概念不能模糊,但一个问题有些细节部分可能面试官也不太了解,如果你都能说出来那就不错了,所以面试就是谁面死谁的问题了。还有不要起争执,态度谦虚,心里敬佩人家。我们就是来聊聊,并不是来讨要工作的。

总结

作为一名从事Android的开发者,很多人最近都在和我吐槽Android是不是快要凉了?而在我看来这正是市场成熟的表现,所有的市场都是温水煮青蛙,永远会淘汰掉不愿意学习改变,安于现状的那批人,希望所有的人能在大浪淘沙中留下来,因为对于市场的逐渐成熟,平凡并不是我们唯一的答案!
在最后我整理了一份资料,而且我们为了感谢很多支持的学者,资料是无偿分享的,需要的同学可以来学习学习
领取方式:点击腾讯文档地址
资料.png
资料图.jpg

.(img-IsCFfJCD-1620823415033)]
[外链图片转存中…(img-e6Ysv3S8-1620823415035)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值