Android笔试面试指南
基础知识篇
虚拟机相关知识基础
-
虚拟机的内存管理
-
虚拟机的垃圾回收
-
虚拟机的种类:Java虚拟机、Android两种虚拟机的对比
-
class与dex文件
-
Class加载
Java基础
尤其需要深入理解容器、I/O、线程、反射、泛型等。尤其是容器的源码实现。
Kotlin基础
这里推荐:Bennyhuo的视频《Kotlin系统入门与进阶》
数据结构与算法
-
基本的数据结构
-
基本的排序算法
-
算法的时空复杂度
操作系统基础和计算机网络
-
操作系统方面的知识:推荐《操作系统面试重难点总结》
-
计算机网络方面,注意TCP/UDP,三次握手;HTTP/HTTPS 等知识
设计原则与设计模式、架构
推荐:《Android源码与设计模式》,谁看谁知道,好书不解释,一本就够了。
版本控制与持续集成、自动化构建、Gradle
-
版本控制推荐学习Git和GitHub,可以去看廖雪峰大神的文章。
-
持续集成、自动化构建平台搭建:有兴趣的朋友去研究jenkins
-
Gradle:推荐徐宜生大神的《Android神兵利器》
Android面试常问知识篇
Android基础就不再赘述了,相信大家都比较熟悉,找一个系列的博客或者买本书籍补习即可,也推荐去看黑马的Android视频。重点关注四大组件的生命周期、Activity启动模式等等。
下面主要介绍一下Android基础知识以外的。
Android系统架构与源码分析
作为Android APP开发人员,源码不必深入掌握代码每个细节。但是有些东西,掌握了就会加深对Android的理解,这就是源码的魅力所在,它深深地吸引着笔者。这也是区分各位应聘者的门槛。
-
热修复与插件化框架源码
-
Android路由、组件化源码
-
异步框架
-
新的动画框架
-
网络请求框架源码(Retrofit的话推荐去有心课堂看视频)
-
图片加载框架源码(Glide、Fresco等)
-
数据库框架源码
新技术
学习一些插件化、热修复框架,Android路由、组件化、异步框架、新的动画框架等等。
-
插件化:滴滴(任玉刚)的插件化框架VirtualAPK、奇虎360的插件化框架RePlugin等
-
热修复:阿里巴巴第三代非侵入式移动热修复解决方案(注意不是AndFix哦)等
-
路由:ARouter等
-
组件化:Atlas等
-
异步:RxJava、RxAndroid等一系列框架等(推荐有心课堂)
-
新的动画框架:Lottie等
性能优化
性能优化也是Android面试中常问的点,这里推荐一些相关资料:
-
腾讯音乐大神的书籍:《Android应用性能优化最佳实践》
-
Android性能优化官方文档
-
《Android开发艺术探索》中的关于性能优化额的章节
自定义View与动画
这是Android中比较难的一部分知识,需要平时就不断积累、锻炼,相关的文章比较多,就不推荐了。
NDK开发(含JNI)
NDK开发也是用人单位区分应聘者的手段之一,企业不一定要用到,但是可以通过是否掌握NDK来筛选人才。相对来说,大公司比较喜欢使用NDK技术。
项目实战
-
推荐上菜鸟窝官网随便买一个项目视频学习
-
推荐去找个小公司实习或者接个外包
-
上网(例如GitHub)找一些成熟的、完整的项目学习,模仿
技术面
Android基础就不再赘述了,相信大家都比较熟悉,找一个系列的博客或者买本书籍补习即
首先,给出几个注意点:
-
面试中一定程度的装逼是需要的
-
适当的交谈能力是必须的,这个需要平时多练习
-
被问到不懂的时候,不必强行装逼,可以虚心请教,或者适当转移话题
-
态度一定要积极向上,对这个公司充满期待与好奇
HR面
过了HR面,你几乎可以拿到Offer了。
最后
文末放一个小福利给大家,点击我的GitHub即可领取
群内有许多技术大牛,有任何问题,欢迎广大网友一起来交流,群内还不定期免费分享高阶Android学习视频资料和面试资料包~
偷偷说一句:群里高手如云,欢迎大家加群和大佬们一起交流讨论啊!
9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)**
群内有许多技术大牛,有任何问题,欢迎广大网友一起来交流,群内还不定期免费分享高阶Android学习视频资料和面试资料包~
偷偷说一句:群里高手如云,欢迎大家加群和大佬们一起交流讨论啊!
[外链图片转存中…(img-SnM0HhBT-1645101385527)]