
获得徽章 0
- 为保持称谓的一致,我们曾在《生命周期辟谣》篇沿用了 “官方文档” 对其所定义的各进程模式的称谓,同时本人也基于对 PC 操作系统的理解,而原创性地通过类比的方式来分析 “前景”、“可见” 等模式的本质和设计依据,
有小伙伴在理解了本文的思路后,反过来因官方 “可见模式” 概念的字面意思而产生困扰,为此基于本文实际的思路和结论,我们重新赋予其更为精确的称谓 —— “失焦模式”,感兴趣的小伙伴可自行回顾和重温。xiaozhuanlan.com
展开评论4 - 刚刚在 Maven-Central 提交了 UnPeek-LiveData V6 版设计,感谢贡献者对该设计的分享。
这一版的 UnPeek-LiveData 十分接近我理想中的 LiveData 设计,也即它分别提供 “粘性的” 和 “非粘性的” 设计,来分别满足 “可变的、可倒灌的 state”,和 “只读的、一次性的 event” 的场景需要。
该版本在 V5 版的基础上,通过引入代理类的设计,来规避反射方式访问基类数据结构的写法,使代码复杂度较上一版有所简化,感兴趣可自行查阅和在项目中引用。github.com
展开评论4 - 前一阵子忙的忘了《最佳实践》项目已发行一周年了😅
事实上,该项目的演变经历了一波三折,例如期间曾一度想过,要不要以 kotlin 的方式去重新架构,然而考虑到多数人出于实际工作的需要仍然停留在 java,而 java 又是 null 安全问题频发的大户,因而再三考虑,决定坚持 100% 纯 Java 开发,
这样也才有机会通过“高密度的接触”来意识到“接地气”的痛点,乃至不断琢磨着改进、让 java 开发也能不假思索、不必为不可预期的 null 安全一致性问题烦恼。
而这或许也是该项目这一年来能够持续维护且受开发者青睐的原因之一吧github.com
展开48 - 刚刚分享了一篇《Jetpack MVVM 脚手架》开源项目简介,1 年来已有数百位小伙伴在练手项目中应用了脚手架设计,感兴趣的小伙伴可随时查阅。19
- 昨晚和一位作者交流后,改进了数据层返回结果的方式。
此前是内定通过 LiveData 返回,可正如我们在《MVP、MVVM关系精讲》中提到的,不仅仅有页面开发,也存在不是页面的用户接口,它们可能公用同一套 repo 方法。
因此定义了一个 DataResult 类,并且目前 repo 方法传参改为注入 DataResult,把 LiveData 限制在 domain 层及往前,感兴趣的小伙伴可 pull 最新源码查阅。github.com
展开评论7 - 刚刚发行了一篇技术社区产品设计随想,感兴趣的小伙伴可前往查阅。
若是将来有意开发(Web、iOS)和试错 基于该理念设计的技术交流平台,请不要忘了拉上我评论3