摆脱从入门到放弃,你需要掌握的Android知识
在接触Android的过程中,面对诸多的问题,我们经常无从下手。作为一名专业的Android开发师,你对Android的知识必须有个清楚的脉络,能够梳理好Android需要掌握的知识。
image.png
接下来我将梳理一下知识结构。
主要包括的内容是:
基础 和常用知识
Android进阶与时俱进
相关热门技术
编程语言
计算机基础
基础常用知识
基础常用知识需要掌握的点主要是:四大组件、布局使用、多线程 、 动画;
四大组件:
活动 Activity
广播 Broadcast
内容提供者 ContentProvider
服务 Service
布局使用
框架布局 FrameLayout
线性布局 LinearLayout
绝对布局 AbsoluteLayout
相对布局 RelativeLayout
表格布局 TablelLayout
约束布局 ConstraintLayout
多线程
Thread、 Runnable
Handler
AsycTask
IntentService.
HandlerThread
动画
补间动画
属性动画
帧动画
播值器
估值器
Android进阶
主要知识点包括:自定义view、性能优化
自定义view
自定义view流程
事件分发机制
自定义动画、组件
性能优化
内存优化
内存泄露
绘制优化
布局优化
与时俱进、热门技术
图片加载
glide
fresco
picasso
Android-universal-image-loader
网络请求
retrofit
okttp
volley
异步处理
RxJava
RxAndroid
RxBinding
EvenBus
编程语言
需要了解的主要是:语言特性、基础使用、集合类、机制
语言特性
面向对象的3个特征与含义
多态的实现原理
基本数据类型、相关操作及封装类
4种引用:强、弱、软、虚、应用场景
基础使用
基本数据类型、相关操作及封装类
Object类、String类、 抽象类(Abstract).
Static关键字
接口(interface)
集合类:
Collection类、 Arrays类
List、Set, Queue、 Stack、 Map的特点与用法
Vector、ArrayList、 LinkedList的存储特性&区别Map相关HashMap LinkedHashMap,TreeMap.Hashtable、 ConcurrentHashMap
机制
多线程:Thread与Runable,ThreadLoca线程池ThreadPool
线程同步:sychronized同步锁sychronized
反射
JNI
IO与NIO
泛型
计算机基础
主要包括:数据结构、算法、计算机网络
数据结构
线性表、特殊线性表
树、二叉树
串、字符串
图
查找
排序
算法
对应每种数据结构的多种常见算法
计算机网络
计算机网络体系结构
TCP/IP协议、UCP协议
HTTP协议
Socket
当你精通了上述知识后,你已经具备一个中级开发师的专业素养了,接下来就可以进军高级开发师了
你可以向以下方向尝试:架构师、技术专家、管理层
这是一条漫长的路,最重要的是不忘初心,持续努力。