操作系统

  • Windows/MacOSX/Linux

编程语言

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

开发工具

  • IDE

  • Android Studio

  • 调试工具

    • 网络调试

      • Charles
      • Wireshark
      • Fiddler
      • tcpdump
      • Paw/Postman
    • 内存分析

      • monitor
      • MAT
    • Android tools

      • adb
      • draw9patch
      • hierarchyviewer
      • uiautomatorviewer
  • 版本管理

    • Git

      • Git命令
      • Github/GitLab
    • SVN

  • CodeReview

    • Gerrit
    • Github pull request
  • Bug/任务管理

    • Redmine
    • JIRA
    • Bugzilla
    • Teambition
    • Tower
  • 编译工具

    • Gradle
  • 持续集成

    • Jenkins
    • Travis CI
  • 应用分发

    • 蒲公英
    • fir.im

App基础

  • 基本组件

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

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

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

    • Audio/Video
    • Camera/Gallery
  • GPS&Location&Map

    • 系统定位

      • GPS定位
      • Network定位
    • 3rd Map定位

      • 百度Map
      • 高德Map

App进阶

  • Process&Thread

    • Process

      • Linux进程
      • App进程原理
    • AIDL

      • 实现方式
      • 原理
    • Handler/Looper/MQ/Thread

    • Loader

    • AsyncTask

  • 性能优化

    • ANR

    • 布局层级性能优化

  • 内存优化

    • 内存检测工具

    • 内存分析工具

    • Bitmap优化

    • 内存泄露查找及分析

  • 网络优化

    • API优化

    • 低网速下优化

    • 流量使用优化

      • 判断当前网络类型
      • 使用缓存
  • 单元测试

App高级

  • 相关原理熟悉

    • Activity

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

      • View/Window关系
      • View渲染
      • View事件分发处理流程
    • 编译打包

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

    • 与Native App的异同

    • 主流框架

      • PhoneGap
      • ionic
      • React Native
  • 架构能力

    • 架构

      • MVC
      • MVP
      • MVVM
      • Flux
      • Clean Architecture
    • App框架

      • 分包
      • 分层
    • 设计模式

      • OOD原则
      • 常用设计模式运用
  • ART&Dalvik

    • AOT compilation
    • GC
    • Bytecode&.Dex
  • 自动化测试

    • monkey/monkey runner
    • UIAutomator
    • Espresso
    • Robotium

扩展学习

  • 响应式编程

    • Rx

      • RxJava
      • RxAndroid
      • RxBinding
    • Agera

  • 主流开源库

    • 快速开发

      • Android Annotation
      • ButterKnife
    • Views

      • 太多
    • HTTP模型

      • Retrofit
      • OkHttp
      • Volley
    • 图片处理

      • Glide
      • Fresco
      • Picasso
      • UIL
    • 依赖注入

      • Dagger2
    • 数据库

      • ORMLite
      • GreenDAO
      • Realm
      • Sugar
    • 辅助

      • Logger
      • LeakCanary
      • DbInspector

链接:https://github.com/TeamStuQ/skill-map/blob/master/data/map-MobileDev-AndroidDev.md

Android App开发技能图谱(转载)的更多相关文章

  1. Android App 开发技能图谱

    操作系统 Windows/MacOSX/Linux 编程语言 Java HTML/JS (Hybrid/Web App) C/C++ (NDK) SQL (DB) Kotlin 开发工具 IDE An ...

  2. Android ROM 开发技能图谱

    # Android ROM 开发技能图谱 ## 1. 操作系统 * Ubuntu(首选)* MacOSX ## 2. 编程语言 * Java * JNI(务必掌握)* C++* C ## 3. 源码 ...

  3. Android 架构师技能图谱(转载)

    架构与设计 设计模式 重构 技术选型 特性 可用性 性能 包大小 方法数 文档 技术支持 UI架构模式 MVC MVP MVVM 研发工具 集成开发环境 Android Studio Sublime ...

  4. Android 架构师技能图谱

    # Android 架构师技能图谱 ## 架构与设计 - 设计模式 - 重构 - 技术选型 - 特性 - 可用性 - 性能 - 包大小 - 方法数 - 文档 - 技术支持 - UI架构模式 - MVC ...

  5. 一看就懂的Android APP开发入门教程

    一看就懂的Android APP开发入门教程 作者: 字体:[增加 减小] 类型:转载   这篇文章主要介绍了Android APP开发入门教程,从SDK下载.开发环境搭建.代码编写.APP打包等步骤 ...

  6. HTML5 开发技能图谱skill-map

    # HTML5 开发技能图谱![HTML5 脑图](https://github.com/TeamStuQ/skill-map/blob/master/data/designbyStuQ/png-HT ...

  7. Android APP开发需求文档范本

    Android  APP开发需求文档范本 软件需求文档格式的标准写法 1.引言 1.1 编写目的 • 阐明开发本软件的目的: 1.2 项目背景 • 标识待开发软件产品的名称.代码: • 列出本项目的任 ...

  8. Android App开发常用专题开源代码

    Android App开发中用到过的专题类开源代码: 项目的需求多了,不知不觉成了Github摘抄员,感谢分享精神,节省了很多弯路和时间.不过想要实现指定效果,还是要看懂作者的思路才好下手改造. 主题 ...

  9. 关于Android App开发技术分类的一个小总结

     前言 本文从热更新.异步并发.性能优化.网络请求等多个方面对Android App开发的技术进行了一个分类总结.欢迎大家沟通交流. 热更新 [原]热更新开源项目Tinker源码解析之Dex热更新 [ ...

随机推荐

  1. Lucene解析 - 基本概念

    Elasticsearch 权威指南中文版  https://www.elastic.co/guide/cn/elasticsearch/guide/cn/index.html   对于跳跃表,我们看 ...

  2. CTRL+SHIFT

    CTRL+SHIFT+鼠标左右,上下拖动,可快速实现平行和垂直上下复制的功能,

  3. 找不到android-support-v4 包的解决办法

    有时候在开发过程中,总是会遇到一些莫名奇妙的错误,或者在使用fragement和viewpage的时候,就会出现下面这个错误,如果出现找不到android-support-v4 包的时候,可以使用下面 ...

  4. ios中网络请求缓存

    #import <Foundation/Foundation.h> #import "ASIFormDataRequest.h" @protocol NetWorkde ...

  5. iOS中CGRectDividede中布局用法

    - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...

  6. TCP KeepAlive的几个附加选项

    TCP_KEEPALIVE选项只是一个开关,Linux中默认的Keepalive的选项如下: $sudo sysctl -a | grep keepalive net.ipv4.tcp_keepali ...

  7. Apache+PHP配置PATHINFO的一个小问题

    使用ThinkPHP示例,设置'URL_MODEL'                 =>  2,发现提示: No input file specified 应该是PATHINFO配置的问题,试 ...

  8. 老男孩linux实战培训初级班第三次课课前考试题

    ################################################################ 本文内容摘录于老男孩linux实战运维培训中心考试题 如有转载,请务必 ...

  9. dataset string dataset

    DataSet ds = new DataSet(); ds.ReadXml(dataFile); Console.WriteLine(data.Length); string dataxml = d ...

  10. 【Eclipse】Eclipse如何如何集成Tomcat服务器

    需要的环境 下载和配置JDK 读者可参见JDK的安装与配置 下载和配置Tomcat 读者可参见Tomcat的下载和配置 下载Eclipse 读者可参见Eclipse官方网站 Eclipse 4.4.0 ...