写点什么

我们来剖析一下这个 Android 猴子的面试过程,以及被问到的问题

用户头像
Android架构
关注
发布于: 18 小时前

====


小欧在上家公司做过组件化和 MVP,写过 Gradle Plugin,做过 Gradle 编译优化,做过包体积优化


简历评价 & 问题导向


===========


从专业技能来看,对于毕业一年的 Android 开发者来说,Java、Android、计算机基础知识是必备技能,性能优化、Gradle 算加分项了


从项目经验来看,小欧毕业一年做了不少事情,算是比较难得了,其中的 Gradle 编译优化、包体积优化就是亮点了


所以总体上来看,这份简历可以体现出小欧比较出色的能力(学习能力和做事能力),所以面试问题路线大概是两点:


先确认项目是否真实做过,做的多深,对项目中用到的知识、工具掌握有多深


考察专业技能的深度和广度


面试题目及考察点


========


下面是面试的题目和考察点,对于一些比较敏感的问题,没有展示出来(以下观点仅代表个人,不代表任何组织和公司)


组件化如何实现?和 Arouter 的区别?优势?(考察项目中对组件化的参与程度,以及对组件化的一些思考)


此类问题其实和项目关联度很大,需要对所做的项目有详细的了解,同时也需要对已有方案的了解


组件间如何通信?(考察对组件化的了解程度)


MVC、MVP、MVVM 区别?MVP 的缺点?(考察对 MVP 以及相近的架构的理解)


对于 MVC、MVP、MVVM 的分析其实有很多文章,如果在回答的时候有一些自己不一样的思考就更好了


包体积如何优化?(考察项目具体的实现)


关于包体积优化,网上其实有很多通用方案,如果自己真的做过,有一些自己不一样的思考就更好了


Png 和 webp 的区别?(考察细节点)


知识类问题,知道即可


Arsc 是怎么用的?(考察细节点)


知识类问题,知道即可


Gradle 构建优化做了什么事情?(考察 Gradle 构建优化做的事情)


网上有关的文章其实也很多,如果能答上来,会往更深层次问下去,需要有一些准备


Gradle 6.5.1 相比 4.4.1 的变化?(考察细节)


Gradle 的生命周期?分为哪些阶段?(考察对 Gradle 的掌握程度)


网上有关的文章其实也很多,如果能答上来,会往更深层次问下去,需要有一些准备


Android 打包流程?(考察基础知识)


网上有关的文章其实也很多,如果能答上来,会往更深层次问下去,需要有一些准备,下面的几个问题都属于打包流程引申出来的深入问题了


Aapt2 和 Aapt 和 有什么区别 (考察细节点)


Class 和 Dex 文件的区别?(考察细节点)


V1 V2 签名?(考察细节点)


为什么要分 Dex?(考察细节点)


多 dex 怎么加载?(考察细节点)


View 的绘制流程?(基础知识考察)


关于 View 的绘制流程,网上讲解的文章也比较多,如何区分是看文章还是看


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


源码了解的知识呢?本质上还是根据对细节的了解程度来区分的


如何重绘?requestLayout 和 invalidate 的区别?(基础知识考察)


View 事件分发 cancel 事件什么时候触发?(基础知识考察)


事件如何从点击屏幕传递到 View 的?(基础知识考察)


Java 内部类如何访问外部类方法?(基础知识考察)


如何访问 private 方法(基础知识考察)


如何检测线上 ANR?(知识广度考察)


如何检测 crash?(知识广度考察)


总结


==


但是整体问下来,可以看出来小欧的知识还是比较扎实的,深度和广度都有的,项目中的内容了解也比较好,作为刚毕业一年的同学来说还是很优秀的


上面的问题其实更多的局限在知识掌握的层面,对工作经验更多的面试者来说,考察点可能又会不一样了,可能重点就在项目和对项目的思考上了

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
我们来剖析一下这个Android猴子的面试过程,以及被问到的问题