黑马程序员技术交流社区
标题:
【精华中的战斗机】给Android程序员的一些面试建议(技术)
[打印本页]
作者:
Android_Robot
时间:
2016-8-11 16:09
标题:
【精华中的战斗机】给Android程序员的一些面试建议(技术)
【精华中的战斗机】给Android程序员的一些面试建议(中)
涨薪机密——
新
潮流新技术、新框架
,
资源以后不定期更新,
精华技术:
2016最新Android视频教程+源码+技巧/经验+软件+面试
上篇说到底技术掌握到什么程度才能比较轻松地通过面试呢?之前说了那么多,好像和Android没有一点关系,下面就开始以Android为例来分析下面试过程所需的技术。
Android面试过程所需要掌握的技术
一场面试都有一个流程,拿Android面试来说,面试内容不可能全是Android问题,里面应该会有编程基础相关的问题。我对Android面试中的问题做了下分类,如下所示:
类别
描述
数据结构和算法
熟悉或者知道
Java
熟练掌握
Android
熟练掌握
设计模式和架构
熟悉
一般来说,一个Android应用开发岗位是不需要太强的数据结构和算法的,但是这并不意味着候选者可以完全不懂数据结构和算法,所以数据结构和算法大家还是要稍微了解下,由于它不是必须的,所以就算面试过程中回答的不好也没关系,只要后面的Java、Android相关的问题能够完美回答就好。有同学和我反馈,说面试挂在了数据结构和算法,这在社招中应该是不多见的,这多半是因为Android的问题也没有很好地回答出来,这就是社招和校招的不同之处,校招看基础,社招看技术深度和业务。
关于设计模式和架构,其实中高级面试对这个的要求并不是特别高,熟悉下常见的设计模式基本就ok,比如单例模式、工程模式、观察者模式等。
接下来主要描述下面试过程中对Android技术的要求。在我对Android的理解这篇文章中,我对Android的技术类别做了一下划分,如下所示:
类别
描述
开发者所需级别
基本知识点
熟练掌握
初中级
深入知识点
熟练掌握
中高级
基本知识点的细节
掌握
高级
系统核心机制
熟悉、掌握
高级、资深
琐碎的知识点
了解
所有级别
对于大部分面试者来说,大家的目标岗位应该是中高级,中级岗位(百度T4)需要掌握的知识点是:基本知识点、深入知识点;高级岗位(百度T5)需要掌握的知识点是:基本知识点、深入知识点、基本知识点的细节和系统核心机制。
1.
基本知识点
比如四大组件如何使用、如何创建Service、如何进行布局等。这类知识是需要熟练掌握的,并且也没什么难度。
2.
稍微深入的知识点
比如AIDL、Binder、多进程、View的绘制流程、事件分发、消息队列等。这类知识对于高级开发者来说也是必须掌握的,然而相信很多候选者在面试之前并不能对这些问题了如指掌。这些问题基本都是面试过程中很常见的问题,也是高级岗位所必须掌握的问题,不搞定这些问题无法达到百度的高级工程师的标准,因此也不可能通过面试。
3.
基本知识点的细节
比如Activity的启动模式和标记位、Service同时处于start和bind状态时的停止问题、AsyncTask的同步异步问题以及使用时的限制等,这种问题还有很多。这类知识点,大家在开发过程中可以并不会去注意,这会导致一个问题,那就是开发应用没问题,但是在面试时面试官只要稍微问下细节或者特殊情况,就hold不住了。 这类问题也是高级开发者所需要掌握的,有些面试官喜欢问一些看似刁钻的问题,但是候选者如果回答不了也是不好的。
4.
系统核心机制
比如主线程的消息循环、主线程如何和AMS如何跨进程交互、SystemServer进程中的各种Service的工作方式、AsyncTask的工作原理等。这类知识对于高级开发者也是建议掌握的,因为它们可以让开发者理解Android的运行体系。 这类问题并不是所有的Android面试都会涉及到,但是技术含量高的大公司有可能涉及此类问题。
5.
琐碎的知识点
此类知识点我把它们定义为一些重要但是没有什么技术难度的问题,比如如何打开一个网页、如何打电话、如何发短信、如何定位、多点触控等,这类问题往往不好记忆,但是需要的时候去查一下就能立马搞定。这类问题基本上不会出现在面试过程中。
大家结合自己对Android的学习过程以及面试经验,在面试中遇到的问题是不是都是包含在上面的5个分类之中呢?
对于1和5相信所有人都没有问题,但是对比2、3、4中的内容,大家是不是都能很好地Cover呢?
换句话说,如果2、3、4中的内容大家都能很好地掌握,面试中的问题还能难倒我们吗?
在前面的分析中提到,技术是觉得面试是否成功的关键因素,那么在面试前要做的就是把技术搞好,同时注意沟通和态度,这样的话通过面试岂不是很简单的事吗。
其他精华资源推荐:
【强荐!】2016年最新Android学习路线图——按此路线图学习月薪过万{ 火速收入}
平均薪资近12K,Android续写“刷薪”记录!
[持续更新]2016最新Android视频教程+源码+技巧/经验+软件+面试
作者:
jhwei8306
时间:
2016-8-11 20:16
感谢楼主分享
作者:
zaoan
时间:
2016-8-12 12:20
就喜欢这种分享,让我们能够清楚定位,掌握方向
作者:
赵晗
时间:
2016-8-12 13:52
感谢楼主分享
作者:
lvyanxin
时间:
2016-8-12 22:42
overoverno
作者:
zztierlie
时间:
2016-8-13 19:08
赞一个,赞一个
作者:
itcoder
时间:
2016-8-13 21:32
顶顶顶顶顶顶顶顶顶顶顶
作者:
爱学习爱java..
时间:
2016-8-13 23:34
写的很好 学习中会重点掌握
作者:
ustcerlzy
时间:
2016-8-14 11:10
校招看基础 社招看技术深度和业务 这句话讲的很有水平
作者:
五木呵
时间:
2016-8-14 22:05
感谢楼主分享,学到了挺多
作者:
欧文略
时间:
2016-8-14 22:14
真好,清晰了一些 感谢
作者:
itcoder
时间:
2016-8-14 22:30
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
作者:
青火
时间:
2016-8-14 23:27
支持,赞一个!
作者:
马蚁牙黑
时间:
2016-8-15 23:25
写的不错已经收藏了
作者:
邬志江
时间:
2016-11-11 23:47
感谢楼主分享
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2