165 lines
4.7 KiB
Markdown
165 lines
4.7 KiB
Markdown
# Android 面试知识体系
|
||
|
||
## 目录结构
|
||
|
||
- [基础知识](#基础知识)
|
||
- [核心组件](#核心组件)
|
||
- [系统架构](#系统架构)
|
||
- [性能优化](#性能优化)
|
||
- [网络编程](#网络编程)
|
||
- [数据存储](#数据存储)
|
||
- [多线程与并发](#多线程与并发)
|
||
- [设计模式](#设计模式)
|
||
- [算法与数据结构](#算法与数据结构)
|
||
- [开源框架](#开源框架)
|
||
- [系统原理](#系统原理)
|
||
- [项目经验](#项目经验)
|
||
- [面试技巧](#面试技巧)
|
||
|
||
---
|
||
|
||
## 基础知识
|
||
|
||
- [Java基础](基础知识/Java基础.md)
|
||
- [Kotlin基础](基础知识/Kotlin基础.md)
|
||
- [Android基础](基础知识/Android基础.md)
|
||
- [Android版本特性](基础知识/Android版本特性.md)
|
||
|
||
---
|
||
|
||
## 核心组件
|
||
|
||
- [Activity详解](核心组件/Activity详解.md)
|
||
- [Service详解](核心组件/Service详解.md)
|
||
- [BroadcastReceiver详解](核心组件/BroadcastReceiver详解.md)
|
||
- [ContentProvider详解](核心组件/ContentProvider详解.md)
|
||
- [Fragment详解](核心组件/Fragment详解.md)
|
||
- [Intent详解](核心组件/Intent详解.md)
|
||
|
||
---
|
||
|
||
## 系统架构
|
||
|
||
- [MVC架构](系统架构/MVC架构.md)
|
||
- [MVP架构](系统架构/MVP架构.md)
|
||
- [MVVM架构](系统架构/MVVM架构.md)
|
||
- [组件化架构](系统架构/组件化架构.md)
|
||
- [模块化设计](系统架构/模块化设计.md)
|
||
- [Clean Architecture](系统架构/Clean_Architecture.md)
|
||
|
||
---
|
||
|
||
## 性能优化
|
||
|
||
- [启动优化](性能优化/启动优化.md)
|
||
- [内存优化](性能优化/内存优化.md)
|
||
- [布局优化](性能优化/布局优化.md)
|
||
- [网络优化](性能优化/网络优化.md)
|
||
- [电量优化](性能优化/电量优化.md)
|
||
- [流畅度优化](性能优化/流畅度优化.md)
|
||
|
||
---
|
||
|
||
## 网络编程
|
||
|
||
- [HTTP与HTTPS](网络编程/HTTP与HTTPS.md)
|
||
- [OkHttp原理](网络编程/OkHttp原理.md)
|
||
- [Retrofit原理](网络编程/Retrofit原理.md)
|
||
- [WebSocket](网络编程/WebSocket.md)
|
||
- [网络请求优化](网络编程/网络请求优化.md)
|
||
|
||
---
|
||
|
||
## 数据存储
|
||
|
||
- [SharedPreferences](数据存储/SharedPreferences.md)
|
||
- [SQLite数据库](数据存储/SQLite数据库.md)
|
||
- [Room数据库](数据存储/Room数据库.md)
|
||
- [文件存储](数据存储/文件存储.md)
|
||
- [MMKV](数据存储/MMKV.md)
|
||
|
||
---
|
||
|
||
## 多线程与并发
|
||
|
||
- [线程基础](多线程与并发/线程基础.md)
|
||
- [线程池](多线程与并发/线程池.md)
|
||
- [Handler机制](多线程与并发/Handler机制.md)
|
||
- [AsyncTask](多线程与并发/AsyncTask.md)
|
||
- [协程](多线程与并发/协程.md)
|
||
- [并发编程](多线程与并发/并发编程.md)
|
||
|
||
---
|
||
|
||
## 设计模式
|
||
|
||
- [单例模式](设计模式/单例模式.md)
|
||
- [工厂模式](设计模式/工厂模式.md)
|
||
- [观察者模式](设计模式/观察者模式.md)
|
||
- [适配器模式](设计模式/适配器模式.md)
|
||
- [建造者模式](设计模式/建造者模式.md)
|
||
- [策略模式](设计模式/策略模式.md)
|
||
- [代理模式](设计模式/代理模式.md)
|
||
- [装饰者模式](设计模式/装饰者模式.md)
|
||
|
||
---
|
||
|
||
## 算法与数据结构
|
||
|
||
- [数组与链表](算法与数据结构/数组与链表.md)
|
||
- [栈与队列](算法与数据结构/栈与队列.md)
|
||
- [树与二叉树](算法与数据结构/树与二叉树.md)
|
||
- [排序算法](算法与数据结构/排序算法.md)
|
||
- [查找算法](算法与数据结构/查找算法.md)
|
||
- [动态规划](算法与数据结构/动态规划.md)
|
||
- [字符串算法](算法与数据结构/字符串算法.md)
|
||
|
||
---
|
||
|
||
## 开源框架
|
||
|
||
- [Glide原理](开源框架/Glide原理.md)
|
||
- [Picasso原理](开源框架/Picasso原理.md)
|
||
- [RxJava原理](开源框架/RxJava原理.md)
|
||
- [EventBus原理](开源框架/EventBus原理.md)
|
||
- [ButterKnife原理](开源框架/ButterKnife原理.md)
|
||
- [Dagger2原理](开源框架/Dagger2原理.md)
|
||
- [Jetpack组件](开源框架/Jetpack组件.md)
|
||
|
||
---
|
||
|
||
## 系统原理
|
||
|
||
- [Binder机制](系统原理/Binder机制.md)
|
||
- [AMS原理](系统原理/AMS原理.md)
|
||
- [WMS原理](系统原理/WMS原理.md)
|
||
- [View绘制流程](系统原理/View绘制流程.md)
|
||
- [事件分发机制](系统原理/事件分发机制.md)
|
||
- [内存管理](系统原理/内存管理.md)
|
||
- [进程与线程](系统原理/进程与线程.md)
|
||
- [Zygote进程](系统原理/Zygote进程.md)
|
||
- [系统启动流程](系统原理/系统启动流程.md)
|
||
|
||
---
|
||
|
||
## 项目经验
|
||
|
||
- [项目架构设计](项目经验/项目架构设计.md)
|
||
- [性能优化实践](项目经验/性能优化实践.md)
|
||
- [问题排查经验](项目经验/问题排查经验.md)
|
||
- [团队协作经验](项目经验/团队协作经验.md)
|
||
- [技术选型](项目经验/技术选型.md)
|
||
|
||
---
|
||
|
||
## 面试技巧
|
||
|
||
- [自我介绍](面试技巧/自我介绍.md)
|
||
- [常见问题](面试技巧/常见问题.md)
|
||
- [项目介绍](面试技巧/项目介绍.md)
|
||
- [薪资谈判](面试技巧/薪资谈判.md)
|
||
|
||
---
|
||
|
||
*最后更新:2024年*
|