我了解到的Android面试中的一些套路

316 阅读4分钟

做android移动开发也有将近四年时间了,回想起想当年自己独自找工作时,满满的都是心酸唉;
前段时间跟王帅总监(我们都称帅总- -)聊天,说起来面试,或许下次还会让我顶上的节奏么- -(偷笑ing)
在这里,给广大兄弟们小小的分享下我遇到的面试中的面试官们顺手挖的坑吧- -;

1、JAVA篇:
扎实的JAVA基础;这句话出现在每个应聘程序猿的第一句 - - 所以,第一轮套路就来咯
我曾跟朋友聊天(我这个朋友是属于那种对技术要求很细致的那种),那个月他面试几个都没下offer;然后我跟他聊问他:
你都问的什么问题啊?他说 我就问两个问题:
1、扎实的JAVA基础 来来来 讲一下扎实到什么程度- - ?
2、你来到这公司,想得到什么?
听完后的那瞬间,我也是两眼一翻,开始跟他对视……;
其实我刚来公司时,也是他面试的我,好牛的,人也很好;
他给我说,现在啊,好多人都很浮躁,而且水分太多,不得不仔仔细细的看;
其实我就想,如果能说出来语言的几大特性、机制,然后里面的几个核心知识点能了解的差不多就应该了;但是他们回答的不尽人意。
我想要的答案也就是:类加载机制(加载时机,过程,销毁时机,过程),内存结构,几个集合的特点及实现方式、应用场景,持久化,线程、线程池使用、场景,再加上JAVA语言的特性、OOP特征的具体体现等。
或许那个月教育机构大量学院毕业?回答的太不尽人意。
其实,我想说:扎实的JAVA基础 如果面试官这样的问题的话,那么就将自己所有理解到的对这个语言的理解、自认为重点、核心的东西,跟面试官能够说的清楚,也就差不多八九不离十啦;当然,使用场景是最重要的;
2、安卓篇:
通常看到好应聘者抱的简历:熟练使用XXX框架,精通XXX框架使用等字眼。尤其是最近几个月,这一点在各简历中大量出现。
当然,不得不说Android中好多优秀的框架,不停的有人在github分享、掘金等发布。
但是,(被XX支配的恐惧这句话我也不是很清楚,不过我们小组的一个兄弟天天挂嘴上...)我感觉这句话放在这里很有道理;
技术在无时无刻被发掘,尤其是前段时间有国外公布计算机智能全自动编程.. 所以我个人认为,了解最底层实现是最重要的:也就是-为什么?
使用它能给我带来什么?
有没有更优方案?
它是怎么实现这个功能的?
了解为什么才是最重要的,所以,前段时间面几个,问了几个问题:
1、retrofit2 实现原理 常用功能及场景
2、greendao 实现原理 常用功能及场景
3、RxJava 实现思路 常用功能及场景
4、Glide 实现思路 常用功能及场景
当然,在问题后面,我都会在回答完毕后,加一个:为什么?
其实在我眼中:熟练使用XXX框架,不如一句:我熟练操作Bitmap 更有吸引力;
最后,分享几个比较热门的(我们公司大佬经常指点的,熟练掌握的话,当然会更具竞争优势个人感觉!!)
Android篇:
1、Activity启动过程
2、Fragment懒加载(预加载)
3、TextView自定义字体
4、startActivity和startActivityForResult的区别(requestCode的取值范围)
5、事件分发(比如两个嵌套的View时间冲突怎么解决?)
6、Bitmap操作(包括优化、缓存、对图片进行操作等,当然如果熟练使用Matrix和ColorMatrix当我没说- -)
JAVA篇:
1、来来来 讲一下扎实到什么程度- - ?(捂脸ing……)
2、集合特性、使用场景、底层实现
3、流操作、注意事项、手动实现多点断点续传下载(我就载在这上面了- -现在得抓紧回去看看)
4、多线程高效率并发同步怎么执行?线程池使用、注意事项、线程通讯(这个大多数都会问到)
最后,奉劝在准备入职的程序猿兄弟们,会用-是基础,知道为什么,很重要很重要!!!
因为这样,我们才能做到-
时刻准备着面对任何新技术的到来

ps-第一次在掘金发文,每天看这好多大佬分享的文章,自己心中也想尽自己绵薄之力
文采不是很好,如果大家能够看到,还望包含!
希望掘金越来越好!我的王帅总监越来越帅- -