先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip204888 (备注Android)
正文
================================================================
学历在校招中的作用是很大的。校招的投递量大而窗口期短,需要在短时间内与其他大厂争抢最优秀的人才,没有时间对简历进行一一甄别,在学历上设置门槛可以提升筛选效率。所以双非毕业生想通过校招渠道进入大厂有一定难度。但如果你的简历足够亮眼,并且有靠谱的熟人内推,在内推人的背书下还是有机会进入面试的。
================================================================
随着工作经验的累积学历的权重越来越小,因此社招是很多双非生进入大厂的主要途径。学历权重的降低意味着工作经历权重的上抬,如果你的上家也是大厂那么面试通过率会高很多,如果你的上家默默无名,那么可以通过 小厂 > 中厂 > 大厂 这样的路线来提升履历上的含金量。当然,如果你对你的能力有信心,可以完全忽视履历、学历的影响,大厂里专科生出身的大牛我也见过好多。
================================================================
实习是一个性价比很高的选项。一般双非生直接通过校招进入大厂是比较难的,但是如果你有实习经历那就不一样了,特别是开发岗的实习生很高的几率可以自动转正,而实习生招聘又不像校招那样学历卡的那么严,一旦你进入大厂实习,即使最终没能顺利转正,大厂的实习经历也能为日后的校招增加筹码。
相对于校招渠道,内推人的背书在实习渠道中的权重更大,倘若是本部门定向内推,那么进入面试的几率非常高。如果你对自己的学历缺乏信心又想在毕业后进入大厂,那么可以通过参与一些社区或者开源活动结识在大厂工作的朋友,有助于帮你获取一些靠谱的内推资源。
================================================================
分享一个前不久进入字节实习的同学的面经。候选人虽然学历不出众,但是在校期间就参与不少社区活动并且有多个作品上架,亮眼的成绩外加靠谱的内推帮他拿下了字节客户端的实习Offer,并即将转正。
作者:zsqw123 (上海工程技术大学)
基本情况:双非学校、非科班生、有三个App上架、目前大三在读
面试流程:4月1日投简历 > 4月中旬参加了笔试 > 4月底收到字节面试邀请 > 5月初一面 > 5月中旬二面 > 5月27日三面 > 6月8日收到Offer
一面(60分钟)
-
个人介绍, 什么时候接触的安卓开发, 实习能实习多久, 介绍一下项目
-
你说你的软件出现了 OOM, 你怎么解决的? 线上 crash 你是用了什么来分析的?
-
这些项目都是怎么来的? 软件中这些内容都怎么来的? 你知道后端怎么来的吗? 后端是不是爬下来的? 每天有多少上传量呢?
-
进程和线程有啥区别呢? 为什么要定义出这样的概念来? 有什么用呢?
-
哈希表是一个怎样的数据结构? 怎么避免 hash 碰撞? 容量有什么样的特点?
-
数据库有了解吗? 索引了解吗? 怎么实现的快速查找? 快速查找的是什么东西?
-
TCP 协议如何确保稳定传输?
-
说一下 Activity 的启动模式
-
Handler 有了解吗? 说一下原理? 你刚才说到 Looper是个死循环, 那么 messageQueue 没消息的时候那它不还是会循环占用CPU资源吗?
-
我看你用过一些开源库比如说 okhttp, 你能说一下原理吗? 分析一下 okhttp 自带的这些 InterceptorChain 是干啥的? 这些 Interceptor 的用途呢?
-
你觉得有什么你擅长的但是我还没问的?
-
那我讲一下屏幕怎么绘制 view 的吧
-
为什么多次测量性能差了呢? Compose 是怎么解决这些的?
-
onMeasure 里面有个东西叫 MeasureSpec , 你说一下这是一个什么样的数据
算法题: 剑指 Offer 38. 字符串的排列
可能当时没答上来的只有个 HashMap 如何尽可能避免碰撞了
二面(45分钟)
-
你主要用的 Java 还是 Kotlin?(我: Kotlin, 面试官:那我问你点 Java 的东西吧)
-
怎么创建一个线程? start 和 run 的区别? 线程和进程的区别? 进程可以没有线程吗?
-
Android 里面, 主线程的作用是什么? 刷新UI能放到其他线程里面吗? 你说的可以放到其他线程的特殊情况是什么呢? 怎么在子线程弹一个 toast?(提前 Looper.prepare 就行了)
-
Looper.prepare 做了什么事情呢? 能介绍一下 ThreadLocal 的含义吗, 内部实现原理呢?
-
Java里我们要访问本地一个文件, 我们应该怎么办? FileInputStream 读取的是二进制流数据, 怎么读取文本呢? 怎么判断读到文件末尾了呢?
-
你有没有遇到什么比较难的问题呢? (我: OOM 我项目经常出现(这里想让面试官问我项目, 淦 他不问)) 什么场景会产生 OOM 呢? 什么原因呢? 怎么解决的呢?
-
假设一个图片很大, 应该怎么处理呢? (我: Glide/BitmapFactory(这里想让面试官问Glide 但他没问)), 具体是怎么缩放的呢? 假设 BitmapFactory 的 inSampleSize 设置为2的话, 图片内存占用缩小为多少? ARGB_8888 和 RGB_565 的区别?
-
HTTP 请求常用的header说一下? 常见的状态码说一下? 206是什么? 你用过断点续传吗?
学习交流
群内有许多来自一线的技术大牛,也有在小厂或外包公司奋斗的码农,我们致力打造一个平等,高质量的Android交流圈子,不一定能短期就让每个人的技术突飞猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。
35岁中年危机大多是因为被短期的利益牵着走,过早压榨掉了价值,如果能一开始就树立一个正确的长远的职业规划。35岁后的你只会比周围的人更值钱。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注Android)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
注Android)**
[外链图片转存中…(img-8XBVObTf-1713113830711)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!