Awesome Open Source
Awesome Open Source

最全的 Android 技术栈

内容涵盖绝大部分 Android 程序员所需要的技能:「数据结构算法」「程序架构」「设计模式」「性能优化」「组件化」「插件化」「热修复」「NDK技术」「自定义View」「性能优化」「Android源码分析」「深入理解Kotlin」「Java核心技术」「Jetpack」「Router」「Flutter」「RxJava」「Glide」「LeakCanary」「Dagger2」「Retrofit」「OkHttp」「ButterKnife」「GreenDAO」「经典书籍」等。如果您有任何问题或建议欢迎 Issues 。 核心知识脉络:

  • Java核心技术

    • Java 集合框架原理
    • Java 网络编程
    • Java 多线程、线程池、并发库
    • Java I/O,覆盖绝大部分 I/O 类
    • JVM 虚拟机技术
  • 深入理解Kotlin技术

    • Kotlin 类型体系
    • Kotlin 面向对象
    • Lambda 表达式
    • 高阶函数
    • 彻底搞懂 Kotlin 泛型
    • Kotlin 集合
    • 操作符重载
    • Kotlin 协程
  • Android基础

    • 四大组件
    • Activity 启动模式
    • 数据存储
    • 异步操作
    • IPC
    • 熟悉常用框架的使用
  • Android进阶

    • UI 原理
    • 性能优化
    • 常用的开源框架实现原理](#Android开源框架)
    • Android 架构(MVC、MVP、MVVM、Clean、Jetpack)
    • 设计模式、6 大设计原则](#设计模式)
    • AOP、IoC、DI
    • APT、Gradle Plugin、ASM、Javassist、AspectJ
    • 组件化、插件化、热修复
    • NDK 技术
    • Android 虚拟机
  • 跨平台

    • Flutter
    • ReactNative
    • Weex
  • 团队

    • 如何提高整体的团队水平?
    • 如何提高提高团队内代码质量?
    • 如何提高团队积极性?

#Java核心技术#

为了能够开发高质量的 Android App,首先要求我们具备扎实的 Java 基础。

不仅需要熟练使用 Java 各项 API。如 Java 网络编程、多线程并发、集合框架等。

还需要掌握常见 API 的底层原理。如 集合框架的实现原理,要求我们掌握常用的数据结构与算法。

除此以外,还需要我们对 Java 执行机制有一定了解,这个时候可要求我们对 Java 虚拟机有一定的掌握。如 class 字节码、类加载器、垃圾回收机制等。

关于这方面的知识,可以学习参考我之前的一些总结:

Java基础:

Java网络编程:

JavaIO:

Java多线程:

Java集合框架:

Java虚拟机:

数据结构与算法:

#深入理解Kotlin#

随着 Kotlin 在 Android 开发的过程中的普及,以及 Kotlin 本身的一些优势。要求我们对 Kotlin 也需要有很好的掌握。

为了更好的更快更深入的学习 Kotlin,我们可以在学习 Kotlin 的过程中,深度对比 Java,让我们对 Kotlin 的掌握程度快速达到对 Java 的掌握程度。

关于这 Koltin 相关的资料大家可参考我下面的文章,其中包括:类型体系、Lambda 表达式、高阶函数、泛型、集合、操作符重载、协程等 Kotlin 核心概念等:

#设计原则与模式#

设计原则对我们设计出高内聚、低耦合的可维护代码起着至关重要的作用。设计原则与模式很简单,但是如何很好的应用到实际工作中,显得不那么简单。需要我们不断的去琢磨与思考,在这方面我也有一些心得与体会,和大家一起探讨:

#Android架构#

随着我们对设计原则与设计模式的理解与实践,我们也会对程序的一些架构提出一些问题,例如如何去解决我们项目中已存在的一些架构问题,关于这方面的内容可以参考:

#Android开源框架#

使用 Android 开源框架,避免我们重复创建轮子。使用高质量的开源框架,能够帮助我们快速构建高质量的程序。

与此同时,我们了解其被的实现原理,知其然也知其所以然。我们也可以学到很多代码设计上的技巧,同时也能够帮我们快速排查问题。

这方面的内容,大家可以参考我的一些分析文章:

Jetpack:

RxJava:

Retrofit:

Dagger2:

ButterKnife:

#Android性能优化#

#NDK开发#

#跨平台开发#

Flutter:

#经典书籍#


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Java (697,374
Kotlin (61,821
Flutter (12,462
React Native (11,815
Rxjava (1,323
Retrofit (792
Custom View (611
Jetpack (569
Android Architecture (493
Fragments (431
Okhttp (373
Butterknife (280
Dagger (272
Datastructures Algorithms (161
Jni Android (60
Android Source (4
Optimized Memory (2
Related Projects