系列文章目录
目录
前言
新开一个专题,这里会由浅入深逐步分享,如何从一个Android小白进阶为一个Android高级开发工程师的道路。
行文中不会大量涉及源码,只在关键地方贴一点点源码用于结论的证明。还是那句话,不可能只依靠几篇博客就成为大佬,钻研源码,深耕技术才是正道。
如果文章中,有任何错误欢迎评论区发表意见,我们一起成长。
一、Android高级工程师应该具备怎样的能力
1.对Android基础知识及其底层原理的数据
Activity,fragment,Service,数据储存,IPC,消息机制等。
2.Android进阶知识
ART、Hook、JetPack、NDK开发等。
3.Android性能优化相关
启动优化、渲染优化、崩溃优化、内存优化、卡顿优化、耗电优化等。
4.Android开源库相关
okhttp、Glide、RxJava等等
5.java能力,kotlin能力
JVM、异常处理、多线程、协程等。
6.设计模式,架构
面向对象的六大原则,常用的设计模式单例、工厂、建造者、原型、适配器、观察者等。
常用架构mvp、mvvm等架构,优缺点等。
7.Gradle相关知识
编译过程,打包过程等。
8.C++相关
涉及到NDK开发,对C++这门语言也需要有深入了解。
9.算法题
动态规划,字符串处理等
以上这些能力,在日常开发中并不会都用到,但是如果希望通过面试成为高级开发工程师,那技术栈上就不能有一点破绽。(面试造飞机,开发拧螺丝,因为实际开发通常只会负责某一个方向,但是如果技术栈不完整,大厂通常都不会要你。)
二、Activity包含着那些知识
1.activity启动模式和使用场景
2.activity的启动流程
3.activity的生命周期,及相关互动。
4.activity的显式启动和隐式启动柜
5.activity之间传递数据
6.activity恢复数据
7.schema跳转
总结
这次只是一篇前言,后续会不间断更新其中内容。