学习记录

【Android】Square 图片加载框架 Picasso 源码解析

Picasso 是 Square 公司出品的一款十分优秀的开源图片框架,也是目前 Android 开发中十分流行的一款图片加载框架。提到 Square 公司大家一定不会陌生,OkH...
Read More
学习记录

【网络】计算机网络笔记——可靠的数据传输原理

在计算机网络的数据传输的过程中可能遇到数据的损坏问题: 分组的数据(bit)在传输过程中发生损坏,部分从 1 变成了 0 或者从 0 变成了 1 分组在传输过程中丢失,如到达中转路...
Read More
学习记录

【Java】JDK8 HashMap 原理分析(上)——链表部分

之前学习容器的时候缺少了一些笔记,现在补一下笔记顺便重新理解一遍这些容器的源码。 HashMap 是我们在 Java 开发中经常接触到的容器,今天就让我们从它的源码入手来了解它的实...
Read More
学习记录

【Android】 MMKV 源码浅析

MMKV 是腾讯于 2018 年 9 月 20 日开源的一个 K-V 组件,下面是官方对它的介绍: MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反...
Read More
学习记录

【Android】SharedPreferences 源码解析

本文是独立解析源码的第二篇,SharedPreference 是一个 Android 开发自带的适合保存轻量级数据的 K-V 存储库,它使用了 XML 的方式来存储数据,比如我就经...
Read More
学习记录

【Android】EventBus 源码解析

之前写过了很多常用的库的源码解析,但都需要大量参考其他大牛的博客才能彻底理解一个库的原理,这样总感觉会有遗漏。现在想检验一下自己的代码阅读能力,因此尝试靠自己去独立地完成一篇源码解...
Read More
学习记录

【I/O】内存映射—— mmap() 函数的使用

这段时间学习 JVM 学得实在是有点累,要记忆的东西太多…在下一篇笔记还没发出来之前先插一脚,研究一下最近经常遇到的一个函数—— mmap() 。 提到 mmap 大家...
Read More
学习记录

【Android】JVM 学习之类加载机制

JVM 与类加载 Java 语言中,类型的加载、连接和初始化都是在运行期进行的。这样会导致一些性能的开销,但同时使得 Java 成为了一种可以动态扩展的语言。比如编写一个面向接口的...
Read More
学习记录

【Android】JVM 学习之 Class 文件

JVM 与 Class 提到 Class 文件我们先来讨论一下 Java 的跨平台性。Java 是一种『一次编写,到处运行』的语言,也就是说它具有跨平台性。这与 C/C++ 『一次...
Read More
学习记录

【Android】Binder机制原理学习

Binder 是 Android 系统进程间进行跨进程通信的主要方式。我们都知道 Android 系统是基于 Linux 的,那么 Linux 已经提供了如管道(Pipe)、信号(...
Read More