OkHttp[https://github.com/square/okhttp] 已经足够好用。 我想对于这句话没有多少需要争论的,OkHttp足以应对开发中遇到的大部分问题...
对大多数人而言,工作的绝大部分时间都用来开会对需求,对完需求写业务,然后测试上线。在这种情况下,单元测试成了看起来不太重要,但又略显神秘的存在,你可能总想着试试但总也没有机会...
Gson是Android解析Json的老牌子了,它的使用和原理也被大家研究的极其透彻了,可以说这是一个相当成熟的库。但是伴随kotlin的普及,有一个问题也越发明显地暴露了出...
@蜡笔小强要学习 谢谢关注
WanAndroid——探索Android应用架构的一次实践在 《也谈Android应用架构》 和 《Jetpack之Lifecycle、LiveData及ViewModel是如何让架构起飞的》 两篇文章中,我们详细论述了MVC、MV...
在 《也谈Android应用架构》 和 《Jetpack之Lifecycle、LiveData及ViewModel是如何让架构起飞的》 两篇文章中,我们详细论述了MVC、MV...
在《也谈Android应用架构》中我们对MVC、MVP、MVVM进行了详尽的分析,但还有一个问题悬而未决,那就是生命周期。在Android平台上生命周期具有十分重要的意义,因...
谈到架构,想到的一定是MVC、MVP、MVVM这几个词了,然后对比一下它们的优缺点,接下来就是站队的时间了。常常写MVC,偶然见到了MVP,“嗯,真香~”。写久了MVP,又听...
可能会有歧义,但是我们说数组的查询速度,一般应该指判断一个对象是不是在数组中,而不是基于下标,绝大部分情况是知道对象而不是下标的。所以这里提高速度指的是通过对象可以直接定位下标,避免了遍历获取位置。
Java集合源码分析之基础(二):哈希表无论是数组还是链表,其对数据的查询表现都比较无力,要想知道一个元素是否在数组或链表中,只能从前向后挨个对比。出现这个问题的根源在于,我们没有办法直接根据一个元素找到它存储的位...
有一个原则应该是,解决一个问题时,不能引入另一个问题。你想要解决Presenter接口过多的问题,却引入了Object强转以及对type进行switch的判断,把本来presenter做的事情搬到了Activity中。
Android---MVP模式---大道至简一. 前言 看了很多关于MVP的文章,有初级篇,高级篇,还有终极篇 等等,给我的感觉就是: 有没有必要封装的那么复杂? 1. MVP主要解决了什么问题? 当页面比较复杂时: ...
近日市场投放部门的同事找我说,在应用商店输入关键字查看我们APP的排名,这个能不能通过技术自动化实现?本以为是件很简单的事情,结果做的时候遇到了重重阻碍,于是就有了这次逆向之...
Git是什么?代码管理工具。Git是怎么实现的?我们不需要关心。我们只要把目光盯着每个commit,知道git的每个命令都是为此服务的,足矣。 正如我在模型里形容的,git的...
本篇提要:Rebase 第三天:Rebase的传说 路人丙是个有探索精神的人,虽然昨天通过分支+cherry-pick成功解决了问题,但他总觉得有些怪异,哪里怪异又具体说不上...
你好哈,可能这里没有解释清楚,也没有截取源码中注释的内容。Object[] r = new Object[size()];此时拿到的size是当时的瞬时值,接下来使用Iterator遍历过程中,有可能size的大小会发生改变,而Iterator判断hasNext会实时获取最新的size(当然有些实现会重写此部分内容)。这时候toArray保证的是最终返回的大小是最新的。
Java集合源码分析之超级接口:CollectionCollection Collection是List、Queue和Set的超集,它直接继承于Iterable,也就是所有的Collection集合类都支持for-each循环...
本篇提要:分支、FastForward、Cherry-Pick 第二天:分支与cherry-pick的作用 第一天走的比较早,到家后飞机酱听说老板过去视察工作了,内心有点慌乱...
本篇提要:git的核心理念、结构、代码库的创建和Merge 从开始使用git至今看过无数文章,大多时候是为了解决一个特定问题,寻求一个特定的解决方案,偶尔也会看一些新手向的教...
目录 瞎比比 什么都别说,先看看效果怎样? 需要什么材料、设备? root 手机 为 Android 手机装上 Linux 系统 最后 瞎比比 自从没有了学生身份之后,购买云...
如果data没有缓存,切换后数据就丢失了,除非设置offsetpagelimit
Androidx-fragment1.1.0版本实现懒加载升级为Androidx后,fragment在1.1.0发生一些变化setUserVisibleHint方法给标注为Deprecated提示用setMaxLifecycle实现...
p本身是第0个元素,当bitCount=0时操作的是p.next,也就是第1个元素,所以bitCount=6时p后边有7个元素,这样就一共是8个了,再次循环开始树化
Java集合源码分析之Map(五):HashMapHashMap可能是我们使用最多的键值对型的集合类了,它的底层基于哈希表,采用数组存储数据,使用链表来解决哈希碰撞。在JDK1.8中还引入了红黑树来解决链表长度过长导致的查询...