Android面试整理

Android面试整理

前言

最近要步入找工作的大军了,所以根据简历做了一份面试整理,主要包括过去使用的技术点、基础知识、现在流行的技术以及做项目踩的坑

简历技能

  1. 数据结构和算法
    前段时间把数据结构和算法的书重读了一遍,所以接下来着重是算法,面试官有很大的几率会让手写几个排序算法.
    排序代码参考文章:
    http://blog.youkuaiyun.com/guanhang89/article/details/51902378

  2. Java基础和设计模式
    基础可能会问时间复杂度???我觉得设计模式是重点,鉴于模式的种类有点多,常用的是单例,工厂和抽象等.
    详细的Java设计模式,请参考文章:
    http://www.cnblogs.com/maowang1991/archive/2013/04/15/3023236.html

  3. Android源码和自定义控件
    我觉得这个源码写上去有点吹大发了,而且还是框架层的,没办法,只能把android源码那本书再看看了,至于自定义控件,涉及的是view的绘制,onTouch事件的分发处理以及动画的衔接,反正也是跟源码脱离不了关系,当然跟算法也有关系
    view的绘制流程参考文章:
    http://blog.youkuaiyun.com/yanbober/article/details/46128379/
    onTouch事件参考文章
    http://www.cnblogs.com/linjzong/p/4191891.html
    //简单说一下Touch事件
    默认Touch事件是一直向下分发的,但是父view有拦截Touch事件的能力.
    动画参考文章:
    http://www.jianshu.com/p/420629118c10
    //算法,略

  4. 网络层开发和TCP/IP协议
    网络是重点啊,同学们,逢面试必是重点,
    这里呢,推荐一下IM开发者社区里的小伙伴整理出来的《TCP/IP详解 卷1:协议
    地址是:http://www.52im.net/topic-tcpipvol1.html
    如果觉得太长看不完,请参考以下文章:
    http://www.cnblogs.com/roverliang/p/5176456.html
    http://blog.jobbole.com/91841/
    http://blog.youkuaiyun.com/goodboy1881/article/category/204448

  5. Sqlite数据库、MySQL、以及xml、json的解析
    android数据库用Sqlite,一般自己写没什么难点,可能多表联合查询有点麻烦,而且android内部将sq语句的增删改查用api又封装了一下,所以就算不会写sql语句,在实际编程问题不大,但是我们是在面试诶,所以怎么写语句还是要会掌握的,sql语句的复习还是直接看w3school网站的吧,简单明了
    w3school学习sql的地址:
    http://www.w3school.com.cn/sql/
    //MySQL我觉得其实跟sqlite区别不大,所以此处略

    xml和json的解析,现在一般用json的多一点,因为比xml传输的优点多,我记得有体积小,传输速度快等有点,xml的具体解析步骤不记得了,不过原理是根据对应的节点来进行解析,json解析,我在项目中一直用的是原生,可以自己封装一下,也可以用一些第三方的框架,比如阿里的Fastjson和GSON
    //这里的文章略了,真有兴趣,可以翻翻FsatJson和GSON的源码,面试官对喜欢学习的人一定会觉得欣喜

  6. JNI、NDK开发、AIDL、热修复、热更新、冷更新(增量更新)、插件化开发
    其实我简历上没写这么多的,但是为了以防面试官的回马枪,问一句,”你既然知道热更新,那你给我讲讲冷更新吧”,所以,还是都统一做一个整理吧.

    JNI和NDK参考文章:
    http://blog.youkuaiyun.com/xyang81/article/details/41759643
    http://mysuperbaby.iteye.com/blog/915425
    AIDL开发参考文章:
    http://blog.youkuaiyun.com/stonecao/article/details/6425019
    http://blog.youkuaiyun.com/u011974987/article/details/51243539

    热修复参考文章:
    http://blog.youkuaiyun.com/jiangwei0910410003/article/details/53705040
    http://blog.youkuaiyun.com/mynameishuangshuai/article/details/52718202
    热更新参考文章:
    http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/1115/3684.html
    http://blog.youkuaiyun.com/stanny_bing/article/details/53259991
    冷更新参考文章:
    http://blog.youkuaiyun.com/guang_wen/article/details/60579984
    http://blog.youkuaiyun.com/dd864140130/article/details/52928419
    插件化参考文章
    http://blog.youkuaiyun.com/qingcuilu/article/details/46497821
    http://blog.youkuaiyun.com/shareus/article/details/51454807

  7. 第三方框架的使用和封装

    • 网络层:Okhttp、volley
    • 展示图片:Glide、Picasso、Fresco
    • 数据库:GreenDao

    等框架
    以下文章是关于Android框架的,可参考:
    https://www.oschina.net/news/73836/15-android-general-popular-frameworks
    http://www.cnblogs.com/angrycode/p/5956704.html

Android基础面试题(基础知识)

参考文章:
http://blog.youkuaiyun.com/xhmj12/article/details/54730883
http://www.cnblogs.com/WangQuanLong/p/5826098.html

流行的技术

看到有些招聘条件上写要求会React Native,所以把这点列出来
React Native参考文章:
http://www.jianshu.com/p/b88944250b25
http://www.jianshu.com/p/978c4bd3a759
嗯,还有Google的新开发语言Kotlin(也出现了一段时间,不过一直没用上,所以也没太关注)
Kotlin语言开发参考文章
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2016/0226/4000.html
//还有缺少的,欢迎小伙伴补充

项目里的坑

很多面试官其实对开发者的潜在能力比实际能力更感兴趣(如果公司是真的招人的话),所以在开发中遇到的困难和解决困难的能力无疑还是一向很厉害的能力,就我自己目前遇到的问题及解决的,列出来几点
1. 屏幕适配
2. 机型适配
3. view的绘制
4. 进程管理、保活
5. 内存优化
6. 网络纠错
7. 断点续传
//暂时先写这么多
知乎上有个提问是关于Android开发的坑,这里也把地址给出来:
https://www.zhihu.com/question/27818921

最后

以上是我的整理,如有什么改进建议,欢迎留言补充,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值