程序员去大公司面试,这份333页关于性能优化知识点的PDF你不能不看!已开源

程序员去大公司面试,这份333页关于性能优化知识点的PDF你不能不看!已开源,第1张

概述前情首先介绍一下自己的情况吧,由于当年高中年少轻狂,不努力,差二本线16分。我自己也没有意识到学历的区别,最终听了家里的安排上了一个专科,电气专业。现在想想都很后悔,当年为什么没有自己的主见,如果复读或者读三本都比这个好很多。后来也算是意识到了自己学历的不足吧,先是专升 前情

首先介绍一下自己的情况吧,由于当年高中年少轻狂,不努力,差二本线16分。我自己也没有意识到学历的区别,最终听了家里的安排上了一个专科,电气专业。

现在想想都很后悔,当年为什么没有自己的主见,如果复读或者读三本都比这个好很多。后来也算是意识到了自己学历的不足吧,先是专升本,然后就是考研。

也是自己的基础不行吧,最后调剂到一所双非的大学读计算机专业,基础不好,什么都是自学。

在学校,找了一个导师,接触到AndroID,刚开始什么都不会,看着视频学java,AndroID开发,慢慢入了门,但是也只处于入门阶段。

时间很快就快毕业了,由于疫情原因,已经在家待了半年,决定试着在各大招聘平台试着找找工作,就当锻炼一下自己。

一面:

应该是个参加工作不久的研究僧师兄,出了一道算法题,主要考字符转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源码,其实我也是看别人写的源码解析,(嘿嘿,毕竟年轻,多向别人学习)

更多学习和讨论,欢迎加入我们的知识星球!

点击这里加入我们吧!

群内有许多来自一线的技术大牛,也有在小厂或外包公司奋斗的码农,我们致力打造一个平等,高质量的AndroID交流圈子,不一定能短期就让每个人的技术突飞猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。

猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。

这里有2000+小伙伴,让你的学习不寂寞~·

总结

以上是内存溢出为你收集整理的程序员去大公司面试,这份333页关于性能优化知识点的PDF你不能不看!已开源全部内容,希望文章能够帮你解决程序员去大公司面试,这份333页关于性能优化知识点的PDF你不能不看!已开源所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1051190.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存