独立开发周记 #21: Apple 预判了我的预判

2023-07-10 21:55:37 +08:00
 vulgur

2023 ,0703-0709

今年的夏天真是太热了,都想去南方避暑了。好不容易终于等到了一场暴雨,整个城市降温了不少。

据说今年是百年最强厄尔尼诺,但厄尔尼诺对全球温度的影响通常在其形成的第二年展现出来,所以 2024 年会更热……🥵

喜迁新址

周四,极简软件工作室喜迁新址,从卧室到客厅。孩子大了,需要自己单独的卧室,我就被迫从次卧里赶了出来,从此从私密办公变成了开放办公。

过去的 7 年,我的工作台一直都是在次卧里。在一个地方坐久了就调整一下次卧的布局,这么多年调整了七八次。目前桌子上唯一没换过的就是戴尔的 U2412M 显示器和第一代的 Magic Mouse (还是上电池的),这个显示器买了有 10 年了,在北京用了三年,回家后也带了回来。桌子和椅子都换了三轮了,电脑也换了三个,键盘换了十多把。

极简日记 App Store

这周依然在推进 1.7.6 ,导入导出的功能终于优化完成了,也给其他一些细节进行了修修补补。

这其中最耗时耗力的是针对日历的优化。一开始以为是日历的卡顿是加载图片造成的,但是改为了异步加载图片还是卡,后来干脆把加载图片的功能注释掉才发现没有图片了也卡。所以卡顿瓶颈不是在 IO 这里,而是在 UI 上。期间请教了 Bee ,他在自己的 app:瓦尔登中实现了可以横向无限滚动的、没有任何卡顿的列表,他不仅无私分享了他的代码给我,还详细地教我如何使用他封装好的代码。尽管如此,我的日历在他的列表中依然卡顿,而且我需要改动一些我的代码才能在他的代码中正常加载图片。好在最后我也发现了卡顿的真正原因,就是控制日历滑动的位移以及当前月份的几个 State 变量没有协作好导致的。

除了修 bug ,还想着加入一个关于草稿的新功能。原来的草稿是打开编辑页时自动恢复的,但是这样有一定的强制性,万一用户不希望恢复这个草稿而是想直接新建一个日记呢。于是我想着参考即刻 App 重新设计一下整个草稿功能,也就是将未完成的草稿作为一个提示给到用户,让用户选择继续编辑还是删除这个草稿。

但是这里又遇到了纠结点:该如何设计草稿的数据模型?这时有三种选择:

  1. 将日记的草稿作为一个临时生成的 struct 保存到 UserDefaults 里面,但是这样需要让这个 struct 实现Codable协议,而且如果有多个草稿的话,这样的存取也不方便。
  2. 在日记的数据模型上加入一个新的字段,isDraft,好处是不用在草稿和日记做转换,但是这样日记的已保存和未保存这两种状态不能同时出现。
  3. 在 CoreData 中新建一个专门用于存储 Draft 的数据实体,在属性定义上就是日记数据实体的精简版,可以存储多个草稿,也可以相对方便地转换成日记,缺点就是需要写一堆 CRUD 。

思考了一下午,最终还是选择了最麻烦但是未来扩展性更高的第三种方案,争取下周就能写完这部分的功能。

新 App 调研

半个月前我就产生了一个健康方面的新 App 的 idea ,这段时间一直在调研实现相关的技术。

因为需要服务器存储数据和发送通知,想 w2solo 的各位群友请教了国内外这方面的服务,也顺便学习了什么是 SaaS 、PaaS 、BaaS 、FaaS 。

因为需要使用 HealthKit ,向 StressWatch 的开发者之一的 Patrick 请教了许多关于读取健康数据方面的问题。

然而,就在验证了可行性的第二天,我才发现原来 iOS 的健康 App 就已经有了类似的功能🤦,背刺苹果失败😂。

不过简单体验了一下健康 App 的相关功能,感觉还是有些复杂,而且体验和我想象的差很多,感觉仍有一线可做的机会。

买买买

这周又是各种买。

公众号原文

3263 次点击
所在节点    程序员
25 条回复
Captain0711
2023-07-10 22:00:37 +08:00
好喜欢你这样的桌面布局,想问下,这桌上物品的价值,下半年自己也打算这样来一套
vulgur
2023-07-10 22:02:03 +08:00
@Captain0711 除了 Macbook 都是便宜的入门款
Captain0711
2023-07-10 22:07:51 +08:00
好的 感谢回复
xuanbg
2023-07-10 23:00:56 +08:00
呃,有和我一样在阳台办公的么?没有桌子只有椅子,mbp 放腿上……其实还蛮舒服的
darkengine
2023-07-10 23:32:06 +08:00
@xuanbg 叠加 buff 如下:夏天,intel 的 macbook ...
xuanbg
2023-07-11 08:04:27 +08:00
@darkengine 我的 mbp 正是 18 年版的,还是 i9 呢。好吧,偶尔会很烫,不过下面垫一本我儿子的《博物》就解决问题。哈哈哈
darkengine
2023-07-11 08:33:35 +08:00
@xuanbg 低强度可以,我开个 Android studio 开个 VScode ReactJS 项目可以煎蛋了
Promtheus
2023-07-11 08:55:34 +08:00
@xuanbg #4 放腿上脖子不会难受吗,老是低着头。感觉坚持不了多久
Esen
2023-07-11 09:56:55 +08:00
键盘下面白色的物件是什么
vulgur
2023-07-11 10:11:21 +08:00
@Esen Apple Watch 的充电宝
konakona
2023-07-11 10:17:31 +08:00
@xuanbg 颈椎可还行?
jwh199588
2023-07-11 10:51:18 +08:00
画图的是什么软件
sch1111878
2023-07-11 11:00:16 +08:00
请教收益可以覆盖上班的工资吗?
jry
2023-07-11 11:07:03 +08:00
独立开发,靠极简日记收入吗老哥。
vulgur
2023-07-11 12:04:47 +08:00
@jwh199588 无边记
vulgur
2023-07-11 12:04:58 +08:00
@sch1111878 可以
vulgur
2023-07-11 12:05:34 +08:00
@jry 极简日记只够早餐钱,更多的是其他的 app
ureyhiker
2023-07-11 13:18:29 +08:00
请问第一张图里面黑色的小音箱是什么品牌款式呀?
Cliff99
2023-07-11 14:43:12 +08:00
脚下那个设备是什么?
vulgur
2023-07-11 17:14:44 +08:00
@Cliff99 脚踏

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/955632

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX