入职阿里一个月被迫转Android...

Posted 懂你的大海

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了入职阿里一个月被迫转Android...相关的知识,希望对你有一定的参考价值。

大家好,我是会 android程序员小菜鸡大海 。

有些同学问我,大海,你到底是写 c++ 的,还是写 Android 的。

不小心暴露自己了、两个语言我都略懂皮毛哈哈。

给大家说明下,我实习和阿里面试都是 C++ 进来的,

工作了之后转了 Android 语言开发。

之前给大家写过一篇 c++ 的学习路线。受到了大家的一致好评。

现在给大家分享下我的 Android 成神之路 ( 说错了,菜鸡之路嘿嘿 。

学习

大海学 Android 是从阿里实习回去开始的,那个时候知道后面要转语言啦。

于是突突突从零开始学习 Android。

因为之前有 C++ 的一些基础,所以语言特性这块学起来是比较快的。

我的 Android 是跟着一个 B 站的老师学习的。(这个老师现在也有点火了

有系统的学习路线和对应的教程,学习起来会比较的快。

大概跟着学习了一个月的时间左右。

我就掌握了一点点他快速自学的方法,后面我就不怎么看他的视频了。

我开始自己罗列重点,写教案,录视频,讲课。

如果要我说学习 Android(也可以说是学习计算机语言  最重要的是什么?

  • 学习路线

  • 自学能力

除此之外,都不是最重要的。

Android的学习路线我能从网上罗列一大堆的过来。

这里就不给大家充字数了。

可以多看看一下几个网站。

  • 尚硅谷 B 站

  • 菜鸟教程

  • 美团技术官网

  • 阿里云官网

聊聊 Android 语言

Android语言大部分都是由 Java 语言来编写的

Java 语言虽然一直被吐槽 性能无法与 C++ 匹敌。

但是一门语言的生态很强大。是很难撼动的。

就像键盘上面的按键设置, 有些是不合理的。

但是由于已经成为习惯,所以不会去更改。

其次,Android的框架非常的多,十分适合大数据和业务场景。

程序员们可以每天快乐的 CRUD。

再有就是 有些同学学习计算机语言学习的时候可能会觉得有些枯燥。

但是当你把计算机语言的设计和生活结合起来的时候,你会发现里面都是生活的投射。

比如 Java 里面的 Object类。

其实是有哲学的思想的。

万物都可以是 Object,都是平等的。

我们再看下 Object的方法。

getClass() 回答我是谁。

finalize()  回答了我到哪里去。

wait() 和 notify() 是你和外界沟通协作的方式。

是不是和我们的社会行为很像呀~

再看看 manager , helper。

这些都是人们解决现实生活问题的智慧。

在计算机领域再放光芒。

是不是很有意思呀 ~

学习心得

如果要我总结人生过去学的东西,看过的视频,上过的课程。

我觉得最重要的是 学习 其他人自学的能力。

比如看到一个老师英语口语很好,就可以去学习他怎么做到口语这么好的。

看到别人自媒体做的很好,就要去请假别人是怎么做到的。

看到优秀的工程师代码写的很好,就要多看优秀的人写的代码。

看到一些同学表达能力很强,就要去学习他是一路怎么走过来的。

还有就是 自学不是要自己一个人埋头苦干,手撸操作系统。

请教别人也是自学。

看视频也是自学。

看书也是自学。

写在最后

记得我当年刚工作和实习的时候,看到工作几年的同事觉得自己好菜。

我当时的师傅就告诉我。

闻道有先后,术业有专攻。

你只需要保存谦虚的心,一直往前走就行。

现在才能体会一点这句话的意思。

现在大家也不要看到厉害的人就觉得自己菜。

他只是比你早了解而已。

只要你坚持,你也能成为别人口中的 ”大佬“。

关于上面写的路线图问题,我在下面放个链接,需要的小伙伴可以点击链接获取

Android学习路线图获取地址

同时还有配套学习路线图的学习资料下载,均为免费获取

 以下完整学习笔记PDF,点击这里免费下载获取!点击这里免费自取!!

架构师筑基必备技能

目前Android APP开发主流语言就是Java语言,Java语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用Java语言来进行编写的。

JAVA知识要点:
1、 Java序列化、泛型与反射
2、虚拟机底层原理
3、Android内存原理
4、 Java高级并发原理详解
5、 编译时技术掌握与实战
6、JDK高级动态代理
7、高级数据结构与算法
8、 Java IO操作
9、
。。。。

Android R FrameWork源码与UI

在Android中,Framework泛指系统架构层。Framework的中文意思是“框架”,在软件开发中通常指开发框架,在一个系统中处于内核层之上,为顶层应用提供接口,被设计用来帮助开发者快速开发顶层应用,而不必关心系统内核运行机制,通常Framework都会隐藏main函数等应用程序必须的组件,开发人员只需把精力放在功能代码的实现上。说简单点,Framework具体的工作也就是为android应用开发的开发人员提供了一系列的服务和API的接口。

UI其实并不是单纯指用户看到的效果。因为在Android开发中,每个控件背后都有一套深层次的体系在支撑,自然而然,会UI不单纯指的是会自定义控件,我们还应该知道自定义控件背后的执行流程,包括从Activity的创建,XML的解析,到每个控件的测量、布局、绘制。当然在中间还夹杂着比如动画、事件分发机制、嵌套滑动机制等知识点。还有谷歌提供的一些UI框架也使我们要掌握的对象,比如Jetpack组件库、Material Design等。

知识要点:
1、 FrameWork源码解析(SDK 30)
2、Android常用组件深入解析
3、JetPack全家桶
4、Android R新特性解析
。。。。。

大厂内部APP调优方案

性能优化是一个项目必须要经历的过程,你的应用好与坏都是在用户使用的过程中反映出来的,如果性能优化没有做好,对于你的应用来说影响是非常大的。尤其是现在的Android市场竞争非常激烈,如果你的应用体验没有竞品的好,那么用户流失是必然的。

性能优化不是一件简单的事情,每个应用的性能好与坏无法由一个人来决定,因为性能优化的维度有太多了,从我们项目的整体架构,到我们代码的每一个细节,再到应用使用环境的测试,只有步步为营,才能做好一个项目的优化。大部分开发者把性能优化指向与不闪退就行,但是实际上性能优化包含了很多方面,比如从简单的启动优化、 UI优化、 卡顿优化、 崩溃优化、 安全性优化,到深层次的弱网优化、 大图加载优化、 储存优化、 高效传输优化、 极限瘦身优化,再到实际开发过程中的OOM问题原理解析、 ANR问题解析、 Crash监控方案。要想把这些优化流程做好,我们不仅从项目架构、代码规范等方面入手,还用学会利用第三方的检测工具来检测项目性能,最主要是,我们需要一套完整的性能优化方案,这正是我们所缺少的,所以我们必须要把缺少的补上, 打造一套真正的完整的性能优化体系,把性能优化流程化,常态化。

1、 APP基础优化
2、APP深度优化
3、开发焦点问题优化
4、编程效率优化
5、项目实战
抖音在APK包大小资源优化的实践
优酷响应式布局技术全解析
网络优化
手机淘宝双十一性能优化项目揭秘
高德APP全链路源码依赖分析
彻底干掉OOM的实战经验分享
微信Android终端内存优化实践

对标腾讯T3.3架构师

Android框架体系架构(高级UI+FrameWork源码) 这块知识是现今使用者最多的,我们称之Android2018~2021年的技术。

Android开发者也往往因为网上Copy代码习惯了而导致对这块经常“使用”的代码熟悉而又陌生:熟悉的是几乎天天在和它们打交道, 天天在复制这些代码 ;陌生的是虽然天天和这些代码打交道,但是并没有深入研究过这些代码的原理,代码深处的内涵。

本篇知识要点:
1、架构师设计思想篇
2、 手淘全套架构设计与实现
3、 开源框架
4、OKHttp网络框架
5、一线大厂核心框架剖析与实现

NDK模块开发(音视频系列)

NDK(Native Development Kit缩写)一种基于原生程序接口的软件开发工具包,可以让您在 Android 应用中利用 C 和 C++ 代码的工具。通过此工具开发的程序直接在本地运行,而不是虚拟机。

在Android中,NDK是一系列工具的集合,主要用于扩展Android SDK。NDK提供了一系列的工具可以帮助开发者快速的开发C或C++的动态库,并能自动将so和Java应用一起打包成apk。

本篇知识要点:
1、NDK开发之C/C++入门
2、JNI模块开发
3、Linux编程
4、底层图片处理
5、音视频开发
6、机器学习

Flutter学习进阶

2019 年无疑是 Flutter 技术如火如荼发展的一年。

每一个移动开发者都在为 Flutter 带来的“快速开发、富有表现力和灵活的 UI、原生性能”的特色和理念而痴狂,从超级 App 到独立应用,从纯 Flutter 到混合栈,开发者们在不同的场景下乐此不疲的探索和应用着 Flutter 技术,也在面临着各种各样不同的挑战。

本篇知识要点:
1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter Dart语言系统入门

微信小程序开发

微信小程序作为现在比较火的编程开发应用场景之一,深受市场的青睐,这让不少开发者眼馋不已。但是对于初学者来说,就完全摸不着头脑了,不知道微信小程序开发制作需要学习那些知识,有需要的朋友可以参考本篇。

本篇知识要点:
1、小程序概述及入门
2、小程序UI开发
3、API操作
4、购物商场项目实战

完整学习笔记PDF,点击这里免费下载获取!点击这里免费自取!!

以上是关于入职阿里一个月被迫转Android...的主要内容,如果未能解决你的问题,请参考以下文章

阿里程序员:入职才两个月,我决定离职

阿里表哥甩给我一份面试秘籍,我看了三个月,却入职京东,税前30K

我花5个月吃透阿里P8纯手打300页深入理解Redis,成功入职蚂蚁

两个月吃透阿里P9推荐260页SpringBoot2企业应用实战pdf入职定P6+

11月最新入职阿里Android小哥真实面经分享(P6)

程序人生:程序员面试成功入职阿里!工作仅两个月却决定离职?