android技术成长之图谱

很久以来,都在忙于公司的项目开发(程序猿总是在不停的追赶进度),没有时间停下来好好梳理一下自己的知识体系,借用那句话“时间就像海绵,挤一挤总是有的”,所以我决定立马提笔,把日常工作中使用和学习到的一些知识和领悟记录下来。
为什么选择先开始梳理android呢,由于本人工作的前两三年一直在从事java web后端开发,最近三四年呢,才转型过来做android,对于我现在每天都在学习,使用,陪伴的,还是android,所以我选择从android开始梳理自己的知识体系。

关于android,我想先梳理出一个技术图谱:

android技术图谱

1. 操作系统

Windows/MacOSX/Linux

2. 编程语言

Java
HTML/JS (Hybrid/Web App)
C/C++ (NDK)
SQL (DB)
Kotlin

3. 开发工具

3.1 IDE

Android Studio
Eclipse

3.2 调试工具

3.2.1 网络调试

Charles
Wireshark
Fiddler
tcpdump
Paw/Postman

3.2.2 内存分析

monitor
MAT

3.2.3 Android tools

adb
draw9patch
hierarchyviewer
uiautomatorviewer

3.3 版本管理

3.3.1 Git

Git命令
Github/GitLab

3.3.2 SVN

3.4 CodeReview

Gerrit
Github pull request

3.5 Bug/任务管理

Redmine
JIRA
Bugzilla
Teambition
Tower

3.6 编译工具

Gradle

3.7 持续集成

Jenkins
Travis CI

3.8 应用分发

蒲公英
fir.im

4. App基础

4.1 基本组件

Activity
Service
Content Provider
Broadcast Receiver
Intent/Intent Filter
App Manifest File

4.2 UI

Layouts
Widgets
Resources
Animations
设备适配

4.3 Connectivity

WiFi
Mobile网络
网络状态监听

4.4 MultiMedia

Audio/Video
Camera/Gallery

4.5 GPS&Location&Map

4.5.1 系统定位

GPS定位
Network定位

4.5.2 第三方Map定位

百度Map
高德Map

5. App进阶

5.1 Process&Thread

5.1.1 Process

Linux进程
App进程原理

5.1.2 AIDL

实现方式
原理

5.1.3 Handler/Looper/MQ/Thread

5.1.4 Loader

5.1.5 AsyncTask

5.2 性能优化

5.2.1 ANR

5.2.2 布局层级性能优化

5.3 内存优化

5.3.1 内存检测工具

5.3.2 内存分析工具

5.3.3 Bitmap优化

5.3.4 内存泄露查找及分析

5.4 网络优化

5.4.1 API优化

5.4.2 低网速下优化

5.4.3 流量使用优化

判断当前网络类型
使用缓存

5.5 单元测试

6. App高级

6.1 相关原理熟悉

6.1.1 Activity

启动流程
生命周期回调原理
与View/Window的关系
与Fragment的关系

6.1.2 View/Window

View/Window关系
View渲染
View事件分发处理流程

6.1.3 编译打包

编译打包原理
逆向工程分析
热修复

6.2 Hybrid App

6.2.1 与Native App的异同

6.2.2 主流框架

PhoneGap
ionic
React Native

6.3 架构能力

6.3.1 架构

MVC
MVP
MVVM
Flux
Clean Architecture

6.3.2 App框架

分包
分层

6.3.3 设计模式

OOD原则
常用设计模式运用

6.4 ART&Dalvik

AOT compilation
GC
Bytecode&.Dex

6.5 自动化测试

monkey/monkey runner
UIAutomator
Espresso
Robotium

7. 扩展学习

7.1 响应式编程

7.1.1 Rx

RxJava
RxAndroid
RxBinding

7.1.2 Agera

7.2 主流开源库

7.2.1 快速开发

Android Annotation
ButterKnife

7.2.2 Views

太多

7.2.3 HTTP模型

Retrofit
OkHttp
Volley

7.2.4 图片处理

Glide
Fresco
Picasso
UIL

7.2.5 依赖注入

Dagger2

7.2.6 数据库

ORMLite
GreenDAO
Realm
Sugar

7.2.7 消息总线

Eventbus

7.2.8 辅助

Logger
LeakCanary
DbInspector

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,837评论 25 707
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,412评论 2 45
  • 1.分支的介绍分支即if/switch/三目运算符等判断语句通过分支语句可以控制程序的执行流程 2.swift和O...
    IIronMan阅读 193评论 0 1
  • 《原来如此》 ——如意 为什么生气, 灵魂向往自由, 不愿意被限制! 你招人不舒服, 人家也招你不舒服...
    axjl如意阅读 222评论 0 0
  • 点击立即阅读:笔若派|朦胧诗_诗歌精选集© 文/笔若我在西海边上捡起一根扁担扁担挑起一本厚厚的诗集却没有一个字我把...
    笔若阅读 708评论 17 54