首页
沸点
课程
APP
AI用量
作品广场
专家标注
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
进阶
订阅
zZZ
更多收藏集
微信扫码分享
微信
新浪微博
QQ
23篇文章 · 0订阅
【重构系列】重构速查小手册
,自己把《重构》中所有的手法全部整理成一篇文章,方便自己也方便他人快速查找,因为篇幅的问题,手法中未添加示例代码,如果你能坚持阅读完毕,相当于你重读了一遍该书精华。😄 创造一个新函数,根据这个函数的意图来对它命名。 将待提炼的代码从源函数复制到新建的目标函数中。 仔细检查提炼…
NDK | 说说 so 库从加载到卸载的全过程
在这篇文章里,我将带你建立对 so 库从加载进内存到卸载整个过程的理解。另外,文末的应试建议也不要错过哦,如果能帮上忙,请务必点赞加关注,这真的对我非常重要。
图解 | 一图摸清Android应用进程的启动
init进程fork出Zygote进程后,Zygote进程会创建一个服务端socket,等待AMS发起socket请求。 同时,由Zygote进程fork出的SystemServer进程会启动各项系统服务,其中就包含了AMS,AMS会启动Launcher桌面,此时就可以等待用户…
Android |《看完不忘系列》之Retrofit
嗨,我是哈利迪~《看完不忘系列》将以从树干到细枝的思路分析一些技术框架,本文将对开源项目Retrofit进行介绍。 Retrofit的底层网络实现基于okhttp,自身的类不是很多,最核心的点就是动态代理了。代理模式简单来说,就是为对象提供一个增强或控制其访问的代理。下面我们先…
一文全面了解Android单元测试
众所周知,一个好的项目需要不断地打造,而一些有效的测试则是加速这一过程的利器。本篇博文将带你了解并逐步深入Android单元测试。 单元测试就是针对类中的某一个方法进行验证是否正确的过程,单元就是指独立的粒子,在Android和Java中大都是指方法。 使用单元测试可以提高开发…
写给 Android 应用工程师的 Binder 原理剖析
一. 前言 这篇文章我酝酿了很久,参考了很多资料,读了很多源码,却依旧不敢下笔。生怕自己理解上还有偏差,对大家造成误解,贻笑大方。又怕自己理解不够透彻,无法用清晰直白的文字准确的表达出 Binder 的设计精髓。直到今天提笔写作时还依旧战战兢兢。 Binder 之复杂远远不是一…
Android 组件化最佳实践
在项目的开发过程中,随着开发人员的增多及功能的增加,如果提前没有使用合理的开发架构,那么代码会越来臃肿,功能间代码耦合也会越来越严重,这时候为了保证项目代码的质量,我们就必须进行重构。 比较简单的开发架构是按照功能模块进行拆分,也就是用 Android 开发中的 module …
深入理解Android 之 Activity启动流程(Android 10)
至于Launcher如何加载展示应用程序到界面这里先略过(与PMS相关),本文先关注Activity启动过程。当我们点击系统桌面的应用图标,直接响应的则是Launcher这个应用程序,会调用它的startActivitySafely方法 以上源码看到注释1,设置启动Activi…
花费2年,字数超一万最佳总结教你Android多进程,微信微博都在用
知其然,知其所以然。 对于进程的概念,来到这里的都是编程修仙之人,就不再啰嗦了,相信大家倒着、跳着、躺着、各种姿势都能背出来。 相信很多同学在实际开发中,基本都不会去给app划分进程,而且,在Android中使用多进程,还可能需要编写额外的进程通讯代码,还可能带来额外的Bug,…
我竟然不再抗拒 Java 的类加载机制了
很长一段时间里,我对 Java 的类加载机制都非常的抗拒,因为我觉得太难理解了。但为了成为一名优秀的 Java 工程师,我决定硬着头皮研究一下。 在聊 Java 类加载机制之前,需要先了解一下 Java 字节码,因为它和类加载机制息息相关。 计算机只认识 0 和 1,所以任何语…