anroid知识体系

简介: anroid知识体系

想要成为一名优秀的 Android 开发,不仅需要断的敲代码,还需要一份完备的知识体系,能够让我们学到的知识体系化。让自己清楚哪块是自己的知识盲区,哪块已经构建起根基,然后根据实际情况,有针对性的进行模块学习。

我平时也逛一些网址,存储了一些Android视频资料,话不多说,直接上图:

一,Java高级

反射,注解,泛型


多线程:线程、线程池、Synchronized、volatile、ReentrantLock


JVM:类加载、内存模型、垃圾回收机制、强弱虚引用


集合容器:Collection、Map


二,安卓多线程

多线程是开发人员必不可少的技术点,也是初学者不太容易掌握好的一个难点。要想设计出优秀的程序,那必然需要合理的线程调度。


Handler:Handler、Looper、Message

ThreadLocal,AsyncTask


三,网络

在 Android 的日常开发和源码阅读中会经常碰到相关知识,掌握这些网络基础知识,也是 Android 程序员真正迈向高阶的过程中必备的一些基本技术素质之一。

HTTP、HTTPS     TCP UDP     TCP/IP     SOCKET


网络请求过程:三次握手、四次挥手、证书、断点续传


四,视图

Surface


View: 自定义 View(measure、layout、draw)


Window:PhoneWindow、DecorView、ViewRoot


事件分发机制:滑动冲突、dispatch


动画:帧动画、View动画、属性动画


ListView工作原理


RecycleView工作原理、与ListView比较


Webview:js通信,加载优化


五,图片

BitMap:加载效率、缓存策略、内存计算


Drawable


加载大图


六,安卓系统

系统启动流程


应用启动流程


进程间通信:IPC机制、Binder原理、AIDL


构建:Grale、APT编译注解处理器


apk打包:打包流程、v1和v2签名、分包multidex、加固


Dalvik与ART


SystemServer:ActivityMagangerService、PackageManagerService,WindowManagerService


Dalvik与ART


JNI:JNI基础、NDK


七,四大组件

Android 四大基本组件分别是 Activity,Service 服务,Content Provider内容提供者,BroadcastReceiver 广播接收器。


Acitivity难点:四大launch模式、启动流程、加载布局流程


Service难点:启动方式、启动流程、应用场景


ContentProvider难点:生命周期、启动流程、原理


Broadcast难点:生命周期、注册方式、启动流程


八,性能优化

作为一个 Android 程序员,性能优化是无法避开的事情,并且性能优化也是 Android 中最有挑战的工作之一,更是每个工程师都需要掌握的核心技能。


启动优化     UI优化     内存优化    卡顿优化    网络优化    数据库优化    包体积优化    ANR


九,三方库

Android 平台上的数据库框架非常多,但是有一个共同特点就是基于对象关系映射(ORM) 模型的。实现的目标也都是不需要写 SQL 语句,通过对对象的操作保存和操作数据。


图片加载:Gride、Fresco、Picasso、Android-UIL


网络通信:Retrofit、Okhttp、Volley


异步处理:RxJava、RxAndroid、RxBinding、EventBus


数据库:


十,与时俱进

跨平台:Flutter、ReactNative、Weex


模块化


Hook技术


插件化:DroidPlugin、VirtualAPK 、Small、RePlugin


组件化:ARouter、CC


热更新:Tinker、AndFix、Robust


动态化


十一,Kotlin

扩展函数    构造函数     协程


十二,框架

Jetpack:ViewModel、LiveData、Lifecycles、Navigation、Room、Paging、WorkManager、DataBinding


MVC

MVP

MVVM

设计模式:六大原则、常见设计模式


十三,音视频

音视频基础


ffmpeg    WebRTC   OpenGL  Vulkan

有需要的可以滴滴我或者留言!!!

相关文章
|
运维 监控 安全
交换机镜像之流镜像,有哪些分类?
【10月更文挑战第3天】
933 1
交换机镜像之流镜像,有哪些分类?
|
设计模式 Java 数据库连接
只要100行代码,实现文本编辑器中的草稿箱功能
大家都用过网页中的富文本编辑器,编辑器通常都会附带草稿箱、撤销等操作。下面用一段代码来实现一个这样的功能。假设,我们在GPer社区中发布一篇文章,文章编辑的过程需要花很长时间,中间也会不停地撤销、修改,甚至可能要花好几天才能写出一篇精品文章,因此可能会将已经编辑好的内容实时保存到草稿箱。
350 1
|
3月前
|
人工智能 IDE 数据挖掘
Python安装 + 使用教程
本文介绍了Python的起源、应用领域及Windows系统下的安装与配置方法。涵盖办公自动化、数据分析、人工智能等实用场景,并详细演示下载、安装、环境变量设置及常见问题解决,帮助初学者快速上手Python编程。
792 3
|
1月前
|
数据采集 人工智能 自然语言处理
一文读懂LLM微调:新手必知的原理、误区与场景化应用方案
本文深入浅出讲解LLM微调原理与实操,涵盖新手必知的核心概念、常见误区及场景化应用方案。通过类比“学霸特训”,解析微调与提示词区别,推荐轻量级LoRA方法,提供从数据准备、环境搭建到模型训练、效果评估的完整步骤,并附实用工具与避坑指南,助力AI初学者快速掌握定制化模型技能,实现个人或企业级AI应用落地。
|
4月前
|
存储 供应链 API
1688获得店铺所有商品的API接口
本文介绍如何通过1688开放平台API获取指定店铺的全部商品信息,涵盖注册、认证、分页调用及Python代码实现,适用于数据同步、库存管理与电商分析,内容真实可靠,步骤清晰易行。
526 0
|
11月前
|
人工智能 算法 数据处理
算法为舟 思想为楫:AI时代,创作何为?
本文探讨了AI时代创作领域的变革与挑战,分析了人类创作者的独特价值,并展望了未来创作的新图景。随着生成式AI技术的发展,创作的传统认知被颠覆,评价体系面临革新。然而,人类创作者凭借批判性思维、情感智能、创意直觉和伦理自觉,依然具有不可替代的价值。文章呼吁创作者转变思维,从竞争走向合作,提升复合能力,关注作品的社会影响,并持续学习进化。在AI助力下,创作将更加民主化、多样化,推动文明进步。最终,人机协同或将成为未来创作的核心模式,共同开创文化发展的新纪元。
|
安全 定位技术 数据安全/隐私保护
|
程序员
中国程序员面临的挑战:行业现状与个人发展
在中国,程序员作为技术行业的中坚力量,他们面临的挑战和困境值得关注。这些挑战不仅影响着程序员的个人发展,也关系到整个技术行业的进步。本文将探讨中国程序员面临的一些主要问题,并分析这些问题背后的原因,同时探讨可能的解决方案。
418 2
|
关系型数据库 MySQL PHP
php wampserver的使用配置
本文介绍了WampServer在Windows系统下的配置和使用方法,包括如何修改PHP时区为中国标准时区PRC、更改Apache服务器端口号以避免冲突、设置起始页以及如何创建和管理虚拟目录。通过这些步骤,用户可以更有效地在本地环境中开发和测试PHP程序。
php wampserver的使用配置
|
数据采集 安全 网络协议
信息安全管理与评估赛题第2套(上)
一共打算发三套样题 后边给大家发师傅们的学习笔记以及对一些题的理解
533 0