追求 UT 覆盖率的时候,到底在追求些什么

最近觉得 UT 真的是一个反人性的存在,因为在写 UT 的时候,往往是刚刚修改完业务代码,对应的逻辑在脑海里还非常清晰,这时候写 UT 更像是一个单纯的体力劳动。

为了 CI 的覆盖率而不得不做的一件事。

Continue Reading »

算法思路总结

过去一年基本上都在练习算法了,人菜瘾大刷了不少题,做个总结吧。

Continue Reading »

archinstall 脚本还挺香,完整保留了 Win 11 分区和引导。

碰到的唯一需要调整的地方是,安装完毕提示 “Would you like to chroot into the newly created installation and perform post-installation configuration?” 我直接无视就重启了。

最好 chroot 然后添加 bootloader config,修改后 bootctl list 确认一下。大概率碰到的问题是,选了 linux-zen 的 kernel,和默认的 vmlinuz-linux & initramfs-linux.img 匹配不上。

用了 10 年的 Arch 了,之前都是 zsh 一行行敲命令安装,再也不想回去了。

Python 记忆化导致的 Memory Limit Exceeded

Python 3.9 中引入了一个新的装饰器 functools.cache 用来做缓存,刷到 DP 相关的题目,就可以很方便地做记忆化了:

Continue Reading »

Digital Root 的黑魔法

Digital Root 或者 Digital Sum 是针对非负 int 类型的操作,给定一个 num:

Continue Reading »

一想到人类其实也被多巴胺奴役着,搞一个 super AI 管理社会,感觉也差不多?

理解 Lifecycle

说来惭愧,2021 年了才开始细看 Jetpack 的 Lifecycle,只因为之前项目里用 RxJava 实现的 Lifecycle 实在是太香了。

Continue Reading »

谈谈 Variance

Variance 是一个计算机科学中的术语,简单来说,如果 A 和 B 两个类型有某种关系,比如 A 是 B 的子类型,那么 Type<A>Type<B> 之间的关系是什么?

Continue Reading »

记录 Kotlin 一处 Bug

简单记录一个 Kotlin 的 bug,调试的时候怀疑人生了。

Continue Reading »

Android Architecture Component - App Startup

App Startup 是 Jetpack 提供的一个用于 App 启动时进行 component 初始化的机制,那么先来看看我们之前一般都是如何实现初始化的。

Continue Reading »