没有稳定的工作,只有稳定的能力。
春天,又到了万物复苏的季节,在程序猿这个行当里,作为 AndroID 开发出生的我,在经历了5年的脱发生涯后,现在更多的是称呼自己为移动开发攻城狮。
面试经历偶然看到知乎的内推帖,投了个简历,下午hr姐姐call我,安排面试选在3天后,然而又要笔试阿里,所以没怎么复习。
8点起床,9点过比较紧张的去了创业园,感觉知乎氛围很好,在那等了一小会,有前台大叔给你倒水。
一面:应该是个参加工作不久的研究僧师兄,出了一道算法题,主要考字符转int,然后分析了时间复杂度和空间复杂度,之后聊了androID ListVIEw的性能优化,还问我recycalVIEw的特点,进程通信的方式,我主要说了aIDl和共享文件,广播,本来还想用java装B,还在精通java,然而师兄并没有问,说叫等一下
二面:二面明显难度提升,而且面试管应该是组长吧,比较喜欢听吹架构,正好之前自己从web后台,客户端,硬件等方面做了一个智能家居项目,就吹了下硬件那边的逻辑,包括蓝牙,wifi的http/IP协议,透传等,红外等传感器,然后web后台我说我用sevlet,因为本身客户端主要需要接口,数据库用MysqL,也没问rollback(嘿嘿),然后把客户端展示给他看看,实在太丑没有美工(这不是重点),由于我的项目中有一个很重要的point就是在硬件触发时唤醒服务器后台推送,首先硬件识别后,串口读写数据到单片机,单片机写入wifi缓冲区,wifi通过http透传数据到我服务器(可以用TCP和IP),服务器获取mac标识,推送至TAG(家庭ID)或者用户(Alias)
说到推送,好好吹吹实现原理。
1:pull方式,http长连接或是socket,轮询间隔设好即可,缺点及时性差
2:push方式,实时性好,方法1,Google自带推送平台(网太差),方法二,xmpp协议(基于XML)。其实封装的比较好了,有个开源包叫asmark,其中有XmppConnection这个推送库,话说好多公司都是用它自己封装库,不过开源的demo只管推,没有延时推送,消息暂存功能,方式3,用三方的
算法:是2个有序数组合并问题,用2个指针每次比较能够O(n)解决问题,算法pass
LruCache:先装装B,说一下我写的和Google V4包有什么不同,主要是没有trimToSize方法,没有sizeof()计算内存耗费大小,我主要是重写linkedHashMap,讲了下linkHashMap源码,其实我也是看别人写的源码解析,(嘿嘿,毕竟年轻,多向别人学习)
由于篇幅问题,我呢也将自己当前所在技术领域的各项知识点、工具、框架等汇总成一份技术路线图,还有一些架构进阶视频、全套学习pdf文件、面试文档、源码笔记做整理一份资料。
需要的朋友可以**私信【学习】**我分享给你,希望里面的资料可以给你们一个更好的学习参考。
或者直接点击下面链接免费获取
Android学习PDF+架构视频+面试文档+源码笔记
330页pdf AndroID学习核心笔记(内含上面8大板块)AndroID学习的系统对应视频AndroID进阶的系统对应学习资料AndroID BAT部分大厂面试题(有解析)好了,以上便是今天的分享,希望为各位朋友后续的学习提供方便。觉得内容不错,也欢迎多多分享给身边的朋友哈。
好了,以上便是今天的分享,希望为各位朋友后续的学习提供方便。觉得内容不错,也欢迎多多分享给身边的朋友哈。
总结以上是内存溢出为你收集整理的android设计!Android事件分发机制收藏这一篇就够了,重难点整理全部内容,希望文章能够帮你解决android设计!Android事件分发机制收藏这一篇就够了,重难点整理所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)