黑马程序员技术交流社区

标题: 【探秘深圳Android招聘】 “白龙马”揭秘2016深圳Android就业... [打印本页]

作者: 余琪琪老师    时间: 2016-3-4 19:36
标题: 【探秘深圳Android招聘】 “白龙马”揭秘2016深圳Android就业...
【探秘深圳Android招聘】

“白龙马”揭秘2016深圳Android就业市场

----------------------------------------------------------------------------------------------------------------
背景:15年我们深圳就业部给大家分享的几篇面试帖广受好评,像有位同学就是看了我的帖子入职了我面试的那家公司哦!
那16年初,在经历了股市崩溃,到现在房市疯涨,深圳android市场又会有什么变化吗?带着这个问题,我们又一次全体出动啦!!!为大家真实揭秘2016深圳Android就业市场。



面试第三波:

面试时间:2016年2月26日
面试结果Android工程师,14k
公司名称:创客工厂
公司地址深圳市南山区学苑大道1001号南山智园C3栋4楼

一句话:非常有极客范~~


来的时候快两点的样子,木有看到前台妹子. 也不知道漂亮否~下次有同学去了可以恢复我的帖子,告诉我~~

面试我的是个眼镜男,看上去年纪不大.上来就直入主题:
PS:自我介绍什么的我就忽略不写了,在前面两次有写到.分享一下几个面试问题:
Q我看你简历写了MVC,说说你对它的认识?
AMVC指的是 Modle,View,Controller.这种模式是为了让我们更好的将业务层和视图层分离开来,这样我们就可以在不依赖业务逻辑的情况下专注于视图设计.并且有利于项目组的团队开发. 像我刚完成的这个项目(从面试官的问题平滑过渡到自己的准备好的面试项目中去),就是用到了MVC.这个项目的框架呢,其实不是我写的,是我从上一家公司的一个项目中拔下来的.删掉了一些不能使用的,大体框架的代码都是可以复用的.这就是MVC的第一个好处,复用性比较高.第二呢,在我整理好框架之后,我们组的其他人,就可以同时开发视图,业务和逻辑层的代码了,效率会比较高.
Q:恩,好,那你除了知道MVC,还知道什么其他的设计模式吗?
A:额,MVC并不算设计模式吧,它应该算是框架模式.设计模式应该指工厂模式那些.(我是看着面试官年轻,不是很严肃那种才说的,大家要看情况,指出面试官的口误是否能帮助你能到offer,如果碰到技术大牛,就记住,所有的答案都不要说死,比如加个前缀:我知道的方法有.....如果被问到不会的,你可以以谦虚的态度,说:这个确实之前没有想到/遇到过,不知道您有什么办法解决呢?总之,秘诀就是,虐菜鸟,哄老鸟).除了MVC之外呢 , 我自己还做过一个小Demo,用的是MVP框架模式.MVP和MVC最大的区别就是,View不再直接使用Modle,所有的交互都放在Presenter内部.Presenter完全把Model和View进行了分离,主要的程序逻辑在Presenter里实现。而且,Presenter与具体的View是没有直接关联的,而是通过定义好的接口进行交互,从而使得在变更View时候可以保持Presenter的不变.除此之外呢,最近比较火的一个MVVM也有所了解,他呢是根据微软的WPF集合MVP来的,这种模式和经典的MVP模式很像,唯一不同的是,我们需要为view量身定制model,也就是ViewModel,ViewModel中包含所有由UI特定的接口和属性,最后由这个ViewModel的视图绑定属性.
Q:嗯嗯,那再说说handler与AsyncTask的区别?
A(像这种xx和xx有什么区别的问题,很多同学都答不上来,可能对两者都熟悉,但是之前从没想过拿两者比较,像这样的情况,建议同学们分别讲清楚这两个概念,再陈述过程中,可能你就发现有什么不同了,就算最后不能总结,你好歹也答出来了一大部分,比你傻愣着,大眼瞪小眼总要好些)
首先说说handler+thread,由于在android中ui线程是单线程,如果在ui线程中执行耗时操作,那么就会导致类似死机一样的体验.那么我们如果新开一个线程呢,让这个复杂耗时的任务到后台去执行,但是执行完毕了我们也无法和ui进行交互.所以这里就引入了handler+thread这个概念.我们通常在UI线程中创建一个handler,handler相当于一个处理器,它主要负责处理和绑定到该handler的线程中的message。每一个handler都必须关联一个looper,并且两者是一一对应的,looper负责从其内部的messageQueue中 拿出一个个的message给handler进行处理。因为我们这里handler是在UI线程中实现的,所以经过这么一个handler、message机制,我们就可以回到UI线程中了.
如果消息阻塞了呢?还有很多其他的原因都可能导致handler+thread会出现问题.从android1.5开始,系统将AsyncTask引入到android.os包中,用于在某些Thread+Handler不适用的情况.它最大的特点,个人经验来说,在于过程
可控,自带多线程.
最后就是问我多少k,我说我上家公司13,然后他就出去了,,,去叫hr啦,又扯了扯闲话,给了14k,俺只能表示回去考虑下,之后再回复她..

这次分享差不多就到这,要跟大家补充的就是:  在班上成绩怎么样,学的怎么样,代码敲的怎么样其实和拿到offer的成功率都不一定是成正比的,我上面说的那些 , 我相信每一个同学,多出去面试几次,多在网上搜搜资料看,都是能答得上来的.就是很多同学迈不开第一步!!!窝在寝室 , 总催眠自己 , 还没复习好,还没准备好 , 然后在寝室超低效率的"复习着". 复习的东西还不如他忘的速度 . 所以同学们 , 这次最想和大家说的就是 : 勇敢的出去面 , 在面试中成长!



作者: 工善器    时间: 2016-3-4 19:43
厉害厉害,我们应该叫做深圳android ”西游记“
作者: 工善器    时间: 2016-3-4 19:43
板凳做一个继续围观
作者: liuxiaoman1    时间: 2016-3-7 21:55
勇敢的出去面 , 在面试中成长!
作者: 奥特人    时间: 2016-3-15 23:01
勇敢的出去,在面试中成长。get
作者: 图兰朵    时间: 2016-3-16 00:50
顶一个,都是大神
作者: wl756071448    时间: 2016-3-16 15:24
琪琪老师威武
作者: flora时光    时间: 2016-4-4 21:58
每个人果然是不同经历,我很欣赏在面试中成长




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2