今天基本完成了手机与手机之间的数据同步,技术上主要是 Core Data > CloudKit > Core Data 及反向流程。
虽说已经基本实现功能了,但感觉很多环节都是使用野路子,依靠对技术仅有的理解,堆出解决方案。但,最佳实践是什么呢?这是我很好奇、也是让我很痛苦的地方。接下来,准备再花点时间了解下 Core Data、CloudKit 的技术,并参考网上的资源,看如何优化现在实现的方案。优化后,可以方便地应用于 Klib 等其它产品中。
另外还有一个关联的问题:数据如何互相驱动?现在的数据存在 3 个地方:Core Data、CloudKit、内存中,要精确实现这三者的一致性,且实现一处修改、推送修改至其他处,很是麻烦,其中有很多逻辑要处理。如何简化呢?比如,是否能去掉内存中的镜像,并不会大量增加 IO 请求、并保持界面的快速响应?
回看日记,已经连续花了一周处理这个事情,时间确实长了点,效率也下降了。明天放空一段时间,看状态再继续。