Android App开发技术图谱

引言:
今天偶然看到StuQ的技术图谱, 找了找竟然没有Android开发的. 想起之前自己弄了一个, 翻出来看看并不过时, 整理下发出, 大家共同进步.

转载请注明出处: 简书/anly_jun/Android App 开发技术图谱

图片比较大, 加载较慢, 请等待~~


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

1. App基础

1.1 基本组件

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

1.2 UI

  • Layouts
  • Widgets
  • Resources
  • Animations
  • 设备适配

1.3 Connectivity

  • WiFi
  • Mobile网络
  • 网络状态监听

1.4 MultiMedia

  • Audio/Video
  • Camera/Gallery

1.5 GPS&Location&Map

1.5.1 系统定位
  • GPS定位
  • Network定位
3rd Map定位
  • 百度Map
  • 高德Map

2. App进阶

2.1 Process&Thread

2.1.1 Process
  • Linux进程
  • App进程原理
2.1.2 AIDL
  • 实现方式
  • 原理
2.1.3 Handler/Looper/MQ/Thread
2.1.4 Loader
2.1.5 AsyncTask

2.2 性能优化

2.2.1 ANR
2.2.2 布局层级性能优化

2.3 内存优化

2.3.1 内存检测工具
2.3.2 内存分析工具
2.3.3 Bitmap优化
2.3.4 内存泄露查找及分析

2.5 网络优化

2.5.1 API优化
2.5.2 低网速下优化
2.5.3 流量使用优化
  • 判断当前网络类型
  • 使用缓存

2.6 单元测试

3. App高级

3.1 相关原理熟悉

3.1.1 Activity
  • 启动流程
  • 生命周期回调原理
  • 与View/Window的关系
  • 与Fragment的关系
3.1.2 View/Window
  • View/Window关系
  • View渲染
  • View事件分发处理流程
3.1.3 编译打包
  • 编译打包原理
  • 逆向工程分析
  • 热修复

3.2 Hybrid App

3.2.1 与Native App的异同
3.2.2 主流框架
  • PhoneGap
  • ionic
  • React Native

3.3 架构能力

3.3.1 架构
  • MVC
  • MVP
  • MVVM
  • Flux
  • Clean Architecture
3.3.2 App框架
  • 分包
  • 分层
3.3.3 设计模式
  • OOD原则
  • 常用设计模式运用

3.4 ART&Dalvik

  • AOT compilation
  • GC
  • Bytecode&.Dex

3.5 自动化测试

  • monkey/monkey runner
  • UIAutomator
  • Espresso
  • Robotium

4. 扩展学习

4.1 响应式编程

4.1.1 Rx
  • RxJava
  • RxAndroid
  • RxBinding
4.1.2 Agera

4.2 主流开源库

4.2.1 快速开发
  • Android Annotation
  • ButterKnife
4.2.2 Views
  • 太多
4.2.3 HTTP模型
  • Retrofit
  • OkHttp
  • Volley
4.2.4 图片处理
  • Glide
  • Fresco
  • Picasso
  • UIL
4.2.5 依赖注入
  • Dagger2
4.2.6 数据库
  • ORMLite
  • GreenDAO
  • Realm
  • Sugar
4.2.7 辅助
  • Logger
  • LeakCanary
  • DbInspector


文/anly_jun(简书作者)
原文链接:http://www.jianshu.com/p/39c63eff3c36
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值