返回首页
最新
嘿,HN,我独自开发了 DreamsJar。这是一款原生的 SwiftUI 应用,旨在以可视化的方式跟踪储蓄目标——你可以为自己想要储蓄的东西创建“罐子”,并在过程中记录存款。
这个想法源于我希望有一种比电子表格更简单,但又比仅仅查看银行余额更具实感的工具。我希望储蓄能够让人感觉到进步,而不仅仅是数学计算。
它的工作原理如下:
- 为一个目标(假期、新笔记本电脑等)创建一个罐子
- 设置目标金额和时间线
- 记录存款,观察罐子逐渐填满
- 在达到10%、25%、50%、75%时庆祝小里程碑
该应用使用 Swift/SwiftUI 和 SwiftData 构建。免费版允许你设置一个目标。
付费版(每月 $3.99 或终身 $49.99)解锁无限目标、iCloud 同步、自定义提醒和存款历史。
一些我觉得有趣的技术决策:
- 使用 SwiftData,并为 CloudKit 兼容性设置了明确的应用支持存储路径
- 在用户测试显示用户流失后,将首次创建目标的步骤从 11 次点击简化到约 6 次点击
- 在某些设置视图中不得不放弃 async/await,以避免 @MainActor 死锁——最终使用基于回调的 API 和延迟加载
如果你对构建过程、SwiftUI/SwiftData 的痛点或 App Store 审核流程有任何问题,我很乐意回答。
LZW是一种用于压缩和GIF格式的算法。它是一种优雅而简单的算法(基于学习一个词典并将源数据编码为其索引),在极限情况下收敛于源的香农熵。
在2013年,我在学习生物信息学时,产生了一个将序列比对和编辑脚本应用于压缩的想法,而不仅仅是像LZW那样在字符串末尾进行添加。因此,LZW-X的构想早在很久以前就诞生了,但直到最近,借助人工智能的力量,我才能够正确地实现和测试它。
这是一个正确的实现,它揭示了我直觉到的:使用这种方法可以获得收益。我将其视为一个起点,为进一步探索奠定基础。
请查看:<a href="https://github.com/BrowserBox/LZW-X" rel="nofollow">https://github.com/BrowserBox/LZW-X</a>