android-study-guide

Android 从入门到放弃

目录

学习方式与渠道

  1. 官方文档

    主要是指 https://developer.android.google.cn/docs 上的各种主题的文档与参考说明。

  2. 书籍
    • 《Android 编程权威指南》
    • 《Android 开发艺术探索》
  3. 社区学习交流
    • GitHub 上 Follow 一些业界比较知名的开发者,然后关注他们关注的东西;
    • 掘金社区
    • CSDN 等;
  4. 小项目练手

    可以找一些公开的 API,去仿写一些常见应用,比如仿写一套微信 UI,仿写一个天气应用等,还可以根据自己兴趣做一些实用的功能应用。

    前期不用追求特别具有实用性和真正价值,有想法都可以动手去试试,重要的是动起来,然后持续迭代和完善,把各种感兴趣的技术在里面结合和实践。

    比如 http://gank.io/api

  5. 视频课程

现在网络上资源很丰富,在此要特别强调 1 和 2,过程可能枯燥,但相对比较系统比较扎实。

学习路线

  1. 语言基础

    • Java
      • 面向对象知识
      • 常用集合类
      • cocurrency 包
      • Java 8 特性
    • Kotlin

    根据个人喜好,选取一门作为主语言,目前我还是以 Java 为主,但 Kotlin 有必要了解下。

  2. 《Android 编程权威指南》

  3. Android 官方文档

  4. 《Android 开发艺术探索》

  5. 《Head First 设计模式》

  6. 了解一些常见实用库的用法

    数据库

    • ROOM
    • GreenDAO

    网络

    • OkHttp3
    • Retrofit
    • Volley

    图片加载

    • Glide

    注入

    • ButterKnife
    • Dagger2

    事件总线

    • EventBus

    多线程/异步

    • RxJava
  7. 了解常见架构模式

    MVC / MVP / MVVM

    可以先在网上找一些文章,然后看 Google 的官方示例 https://github.com/googlesamples/android-architecture

  8. 《Java 并发编程实战》

  9. 探索 6 中所列的部分库的实现原理

  10. 学习 Android 一些重要部分的实现原理

    • Message / MessageQueue / Handler
    • Binder
    • Activity 启动流程
  11. 《重构》

  12. 一些其它的 APP 开发技术

    • React Native
    • Flutter

书籍

我的推荐

其它推荐