Android设计模式源码解析之Builder模式
1. 模式介绍
模式的定义
将一个复杂对象的构建与它的表示分离,使得同样的...
Kotlin中扩展函数、infix关键字、apply函数和DSL的详解
一、扩展函数
定义扩展函数扩展可以在不直接修改类定义的情况下增加类功能,扩...
Android | View.post 到底是在什么时候执行的?
前言
相信绝大部分人都使用过 view.post这个方法,且使用场景基本上都是用来获...
历时1年,上百万行代码!首次揭秘手淘全链路性能优化
简介: 下面,我们一起来看手淘团队在性能优化过程中的一些思考和实践。
...
Android TabLayout总结
TabLayout基本属性:
- background:背景颜色
- tabTextColor:默认文本颜色
- ta...
设计模式之责任链模式
责任链模式
责任链模式(Chain of Responsibility Pattern)
责任链模式将链...
Kotlin 进阶 | 不变型、协变、逆变子类型泛型中的子类型不变型协变逆变PECS 原则 & POCI 原则类型投影推荐阅读
引入泛型之后,子类型的概念变得复杂,好不容易用刚学会的泛型定义了方法,用起...
插件守护进程模型
Replugin与VirtualApk很大的一个不同就是: 对于插件的管理,它支持单独开辟一个...
Android性能优化建议
磁盘
SharedPreferences
我们知道SharedPreferences底层是使用xml文件来实...
Flutter渲染机制
Flutter从本质上来讲还是一个UI框架,它解决的是一套代码在多端渲染的问题。在渲染管线的设计上更加精简,加上自建渲染引擎,相比ReactNative、Weex以及WebView等方案,具有更好的性能体验
从“短信劫持马”的制作来谈APP安全
这种短信劫持木马的概念和新闻我想大家都应该接触过了,就不怎么说概念了,具...
Kotlin 基本类型、函数、lambda、类与对象的写法
1. 基本类型2. 关键字3. 函数4. Kotlin 方法可以直接写在 .kt 文件里,不用写在某...
Android Jetpack系列
Android Jetpack介绍
Foundation:基础
Architecture:体系结构
UI:视觉交互
B...
【Jvm】Jvm类加载机制
类加载时机
虚拟机把描述类的数据从 Class 文件加载到内存,并对数据进行校验、...
Android中的进程Process
关于BeesAndroid项目
BeesAndroid项目提供了一系列的工具、理论分析与方法论,...
JNI 编程上手指南之 Native 访问 Java
本文接着介绍如何在 C/C++ 中访问 Java,主要从以下几个方面来讲述:
访问 Ja...
Kotlin 互斥体:5 个用例
1. 保护多线程应用程序中的共享数据
设想:
在多线程应用程序中,多个线程...
进程间的同步
在看Replugin源码时,发现在对插件apk文件解析之前,对这个文件加了一个ProcessL...
kotlin泛型
泛型使用方法
在类上使用泛型
类上面使用泛型,需要把泛型声明在类名后...
ReentrantLock原理分析
ReentrantLock是Java并发包中提供的一个可重入的互斥锁,它拥有与synchronized...


