这篇归档合并了 2019 年的几篇短笔记。原文大多只有课程提纲、占位模板或外部链接,单独成文的信息量不足;其中转载的 JVM 指令表不再保留,只留下仍然有用的学习线索。
博客的起点
最初参考 ShawnTeoh/shawnteoh.github.io 搭建 GitHub Pages,并使用 Jekyll 发布。后来站点迁移到 Hugo,早期文章地址通过重定向继续可用。
当时的学习计划
2019 年的计划集中在四个主题:
- Java 并发(JUC)
- JVM 原理
- Spring Boot
- 数据结构与算法
原有视频地址已经过时或失效,因此不再保留。学习记录应尽量沉淀为可检索的结论、示例和问题,而不是只保存课程链接。
Android 技术提纲
数据传输
Base64 是编码方式,不是加密算法。它通常会让二进制数据体积增加约三分之一,因此图片和文件上传优先使用 multipart/form-data;只有接口明确要求文本传输时,才考虑 Base64。
使用 Retrofit/OkHttp 上传文件时,可以根据接口选择表单字段、MultipartBody.Part 或请求体。无论采用哪种方式,都不应把密钥硬编码在客户端,传输过程应使用 HTTPS。
性能优化
早期性能优化计划包含以下方向:
- 冷启动、温启动和热启动的准确测量
- 初始化任务的异步执行与延迟加载
- 内存、卡顿和布局层级分析
- 电量、流量、包体积和稳定性治理
优化前先建立可重复的指标和基线,再定位瓶颈,避免只凭体感调整代码。
JVM 指令参考
旧文章转载了一份 JVM 指令表,内容较长且存在缺项,因此不再原样发布。需要查询字节码指令时,优先参考 Java Virtual Machine Specification 或与当前 JDK 版本对应的官方文档。