“是的,我要转Android开发。”
转行导火线
最近《你好!李焕英》这个电影很火,主角的妈妈在孩子不争气的事情后意外去世了,做孩子的心怀愧疚,意外回到过去后一直想让妈妈开心,为妈妈做了很多事情。
我的这位朋友是奶奶一手带大的,却没有给奶奶争一口气,还让老人为了送他上学辛苦还债,没有过上一天安生日子,他一直很愧疚。
他从来没有见过老人骂人,但是她走的时候,说了我:混账——连自己都照顾不好!
后面老人跟他说了几句些话,意思是不放心,要他好好活出个人样儿。
他想,自己能为这个伟大的老人做的最后的事情就是好好在这个世界上活着了吧。
看官:你说的这个“朋友”到底是不是就是你自己?
笔者:是的。而且我现在已经进入阿里,这也算是转行成功了吧?
转行流的汗
转行之难
我这里不是搞歧视,但是测试做久了技术真的会退化。
我大学里本来也没有学到什么东西,刚毕业的那段时间本来是学习技术,个人成长的黄金时期,我也没有好好把握,说不后悔是骗人的。
后面我向公司提出了内部转岗,但是公司不同意。这个也能理解,毕竟现在市场上的Android开发人力资源已经供过于求,尤其是初阶的,竞争特别大。看不上我也是情理之中。
这里也给大家提个醒,要转行就要做足准备,在不了解行情的时候不要轻举妄动。
由于我转行的时候已经32岁了,当时身边的人都在劝我好好做好当下的事情,不要轻易冒险,关键是,现在“Android 已经凉了”,我身边的人不止一次跟我说这些内容。
但是我还是这样一路走下来了。我想要坚持一次,为自己。
我去报了辅导班,和很多非专业的朋友一起学Android开发,他们很多都是有基础的,而我的基础远远跟不上他们,这让我不得不付出更多的时间和精力去学习。
所幸,我得到了很多大佬的帮助。
我的学习经验分享
下面这段简述自己的过往经历,作为一个转行的人,我深知转行的不易,而根据我多年的工作经验,高Android开发的很多都是非本专业的。
所以,我希望自己快要让大家少走弯路,不管是初入Android,或想转Android,还是已经踏上Android的路上,容笔者说说自己的想法,希望能帮到大家。
以下是我转行Android 学习成长的心得体会。
我对那些想转行的人的建议
俗话说:干一行,爱一行,学一行,专一行。
半路出家的人员心态都比较走两个极端,一是看中他的前景;二者是不喜欢原工作(薪水低或干得不爽)。我自己就是属于二者。但不管是你已转行了,还是将要转行做Android,我都建议您静下心来思考下面几个问题:
-
我能做什么?
-
我不能做什么?
-
我的优势是什么?
-
我的劣势是什么?
-
做前端对我有何好处?
-
做前端我要付出何种代价?
-
我能不能坚持做下去?
如果你不能好好的,清楚的回答这些问题,我建议你还是不要轻意转行做Android。
Android需要学哪些?
知识体系
广度
-
对新技术充满热情,乐于尝试
-
阅读一些课外书籍
深度
-
探究设计模式,算法,框架底层原理
-
学习、探索并总结属于自己的Android开发方法论
-
一颗不满足于浅尝辄止的心
学习路线
根据对应的知识点找对应的学习资料(如视频、书籍、文档、文章、项目实战等),学习路线图想必大家都见过,精华咏流传。
笔者在这里推荐一份详细 Android 学习路线,附参考资料,私信我【资料】免费获取。
获取途径:点击此处,Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料。
- 架构师筑基语言基础
目前Android APP开发主流语言就是Java语言,Java语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用Java语言来进行编写的。
知识要点:
1、Java序列化、泛型、反射
2、虚拟机底层原理
3、Android内存原理
4、Java高并发原理详解
5、编译时技术掌握与实战
6、JDK高级动态代理
7、高级数据结构与算法
8、Java IO操作
==================================================================================
在Android中,Framework泛指系统架构层。Framework的中文意思是“框架”,在软件开发中通常指开发框架,在一个系统中处于内核层之上,为顶层应用提供接口,被设计用来帮助开发者快速开发顶层应用,而不必关心系统内核运行机制,通常Framework都会隐藏main函数等应用程序必须的组件,开发人员只需把精力放在功能代码的实现上。说简单点,Framework具体的工作也就是为android应用开发的开发人员提供了一系列的服务和API的接口。
UI其实并不是单纯指用户看到的效果。因为在Android开发中,每个控件背后都有一套深层次的体系在支撑,自然而然,会UI不单纯指的是会自定义控件,我们还应该知道自定义控件背后的执行流程,包括从Activity的创建,XML的解析,到每个控件的测量、布局、绘制。当然在中间还夹杂着比如动画、事件分发机制、嵌套滑动机制等知识点。还有谷歌提供的一些UI框架也使我们要掌握的对象,比如Jetpack组件库、Material Design等。
知识要点:
1、FrameWork源码解析
2、Android常用组件深入解析
3、UI的深度剖析与自定义
4、Jetpack全家桶
5、Android R
6、RXJava响应式编程框架设计
====================================================================
性能优化是针对整个app开发而言的。一个好的项目被开发出来,不单是产品要好,开发者也需要知道,为什么我开发的这个app能够在绝大多数的手机运行,为什么用户在使用的时候绝大部分的手机不会出现bug。我们的apk文件可以优化到很小的,比如你做一个项目,打包之后可能是10m,但是经过优化之后可能就只有8m,甚至更小。另外,我们做的项目安全性如何?我们凭什么断定我们做出来的app安全性好。这都是性能优化中会涉及的。
1、设计思想与代码质量优化
一个app的性能好不好我们需要从两个层面努力。第一个层面:从写代码的时候就需要注意,让自己的代码是高性能高可用的代码,这个过程是书写高性能代码;第二个层面:对已经成型的代码通过工具检查代码的问题,通过检查到的问题来指导我们进行代码的删改,这个过程被称为调优。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
最后
如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。
最后针对Android程序员,我这边给大家整理了一些资料,包括不限于高级UI、性能优化、移动架构师、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!
875728605)]
最后
如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。
[外链图片转存中…(img-izMNAlRr-1711875728605)]
最后针对Android程序员,我这边给大家整理了一些资料,包括不限于高级UI、性能优化、移动架构师、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!