当前位置:三九宝宝网 → 宝宝教育 → 智力培养 → 正文

面试时问哪些问题能试出一个 Android应用开发者真正的水平

更新:02-05 整理:39baobao.com
字体:

[人力资源管理专业题面试人员容易出现的几个问题有什么]楼上的,你别误导人家啊。 容易被应聘者的第一印象所左右,这明明是首因效应吧 晕轮效应(英文The Halo Effect),又称“光环效应”,属于心理学范畴,晕轮效应指人们对他人的认知判断首...+阅读

首先,面试官们一定要知道,每个人由于经历不同,擅长的方向是千差万别的,所以一定不要抓住自己擅长的某个方面去问的很深,觉得“如果连这个都不会还算毛程序员啊”。所以我题的时候,往往是“两步走”的循环:1. 问他做过什么,如果有成品的话,我能看看更好。2. 从他做过的东西里面,找到问题进行提问。具体的问题要看情况,可以是界面或效果的实现方式、相关bug的排除、该部分原理的分析。

举一次面试时的对话作为例子吧:我先开始:“这份简历和网上投过来的那份是一样的吧?” “嗯,应该是一样的。” “嗯好。你在之前的团队的位置是什么?” “中高级吧。” “具体的工作呢?” “写框架,让新人比较容易上手,能够轻松工作。” “你说的框架具体包括什么呢?” “一些会共用的东西,写出来可以让新人就算是刚来也能很好的完成工作。

” “联网是你封装的吗?” “是。” “你们联网用的是什么?” “就是……安卓自带的……HttpClient。” “直接用的?” “嗯。” “那你们的网络请求是怎么做的异步呢?” “嗯……用Handler嘛,还有AsyncTask。” “能具体一点吗?” “嗯……就是……额……” “例如什么情况下用Handler,什么情况下用AsyncTask,你是怎么决定的呢?” “嗯……” “或者说,他们有什么区别呢?谷歌为什么要造他们两个出来,而不是只造一个呢?” “区别……区别……他们肯定是有区别的,不然谷歌不可能造两个。

嗯……”(到这里,这个问题就可以结束了。评级减一。) “这样吧,你的简历上提到‘熟悉大图片的加载’,能说一下大图片加载有什么需要注意的吗?” “缓存嘛。” “缓存?” “嗯,大图片的加载不就是ListView里面的大图片加载吗?要防止内存溢出。” “ListView里面一定是大图?” “嗯……”(不了解的东西却说自己熟悉,评级减一。

继续顺着问。) “那么ListView中图片的缓存你是怎么做的呢?” “三级缓存嘛。” “哪三级?” “如果内存里面有,就用内存里面的;如果没有就用本地的;如果本地也没有就从网络上取。三级。” “网络上的也叫缓存?” “啊。你可以把他看作缓存,也可以不看作缓存嘛。”(这个……) “内存缓存你是怎么实现的?” “用的一个HashMap。

” “直接用的HashMap吗?” “嗯……嗯。” “直接用HashMap的话,怎么防止你刚才提到的内存溢出呢?” “你可以用软引用嘛。”(首先答案有问题,另外当听到关键词“你可以”,多数情况下这个问题也可以结束了——八成是不会,仅仅听说过。不过出于谨慎还是继续问了) “软引用就能防止内存溢出吗?” “还有……还有谷歌出的一个叫LRUCache的。

”(回避正面回答,确认他是不会。这个问题结束。评级减一。到此就再没必要聊下去了。) 然后简单过渡一下,就结束了面试。所以你看,只需要简单提问,然后接着对方的回答继续往深了问,就什么都问出来了。-------------------------------------------------------------------------------- 评论中有人问到这次面试中我没有问完的问题的答案,那简单就说一下,想了解更多还请自行谷歌。

Handler和AsyncTask:这俩类都是用来实现异步的,其中AsyncTask的集成度较高,使用简单,Handler则需要手动写Runnable或者Thread的代码;另外,由于AsyncTask内部实现了一个非常简单的线程池,实际上是只适用于轻量级的异步操作的,一般不应该用于网络操作。我问他Handler和AsyncTask的区别,一方面是因为他说用AsyncTask联网,因此我认为他对AsyncTask并不熟悉;但更重要的是在我问他实现异步的具体手段的时候,他同时提到了Handler和AsyncTask——用这种“混搭”的使用方式来写联网框架,就算不考虑AsyncTask的可用性,也显得非常怪异,这听起来更像是在“列举Android实现异步操作最常用的类”,而非“讲述实现网络异步操作的具体方式”。

也就是说,我听了这句话后开始怀疑他封装过联网框架这件事的真实性。但我只是怀疑,并不确定,因此接着问了我想问的。图片缓存:大多数情况下,内存中使用LRUCache是最合适的。如果用HashMap来实现,不是不可以,但完全没必要嘛!需要注意在合适的时候释放缓存。至于具体怎么释放,我没考虑过,但用软引用的问题在于,你很难控制缓存的大小,也就是说,只有等到你的内存快要撑爆,你的图片缓存才会被回收。

是不是感觉傻傻的?对于初级和中级工程师,我更倾向于考虑对方的学习能力,也就是你对于自己所做过的东西是否足够了解,而非要求你那里都强,因为就像我开头说的,每个人由于经历不同,擅长的方向是千差万别的,我不喜欢挑别人的软肋问。只要你学习能力强,我就安全感满满哒!

本文地址:https://www.39baobao.com/show/32_55348.html

以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请联系我们,我们会及时处理和回复,谢谢.

以下为关联文档:

人力资源开发与管理:结合实际谈谈面试中常见的问题及提高面试效果1、首先,一般都要求自我介绍。其实HR主要是问你做过哪些工作,有哪些经验。其他问题虽然问法不一,但内容大体相似。 2、其次,会问你怎么看待这个职位?不要直接谈看法,其实想知道你...

软件工程设计师 C ASP NET开发面试一般都会笔试和面试哪些题C#, ASP.NET笔试题 (1) 1. 简述 private、 protected、 public、 internal 修饰符的访问权限 答: private : 私有成员, 在类的内部才可以访问。 protected : 保护成员,该类内部和继...

IBM公司面试的三道IQ题第一题: 设有A,B,C三个开关 按下A开关,B开关保持不动,C开关ON一会然后OFF 然后人进门,亮着的那盏灯是A控制,另外两盏熄灭的,然后用手摸两盏灯,比较热的那盏灯是C控制的,剩下的一盏就...

IBM公司面试此经理有一对双胞胎女儿,她们的年龄分别是:2岁、2岁、9岁;经理的年龄是32岁。 与生物学关系较密切. 发色与年龄之间的关系。 下属知道经理的年龄, 只要把13分成三个数, 三数乘积...

ibm的面试1.最初只有8块钱,最后你有11块了, L5'HA3 所以是赚3块; 9^} h0*iX 2.第一次买卖,主人公损失8块,获得一只鸡,第二次买卖;主人公获得9块,损失一只鸡;第三次买卖,主人公损失10块,获得一只...

windows10系统怎么开启并进入开发者模式1、首先,在电脑桌面上点击左下角的微软图标,打开菜单后,点击左侧列表中的设置图标。 2、然后,在Windows设置页面,点击下面的更新和安全选项。 3、接着,在Windows更新和安全页面...

试验员职责和试验员面试问题建筑工程试验员岗位职责 1、严格按照国家有关工程试验的标准、规程,做好试件的取样存放、养护工作和记录; 2、认真执行见证取样和送检制度,对试件的代表性、真实性负责; 3、对试...

好程序员android面试面试哪些问题不知道难不难1. 根据公司的项目需求,比如公司做的是一个涉及到地图定位,支付和聊天的项目,那一般就会找在这方面有开发经验的人。 2. 根据面试者简历上的项目经验,看看这个人做了哪些项目,根...

最近在找android开发的工作总结了有些面试题还是不会希望大侠1 写一个service,application 通过createservice 2 运行时一般是根据uid,文件系统权限跟linux一样 3 可以,知道class名字 或者知道具体manifest怎么写的 4 looper是线程,循环来...