大家好,我的这条信息比较长,所以提前抱歉!这不是广告也不是要求任何东西,我只是想与大家分享我的想法。
我过去8年都是做后端开发(但也有大约4年的一些前端经验),2023年我和女朋友开始开发一个移动应用。
这个 ऐ应用是一款金融应用,很高级的UI(至少在当时那样),内部逻辑也很复杂。我们有两个主要目标:
- 使得女朋友在工作时看到我们家庭预算的情况感到满意。
- 增进我的系统设计技能,因为我想开发自己的产品并且应用一些在我主要工作中不常用的方法来挑战自己。
我在那时使用不同的预算应用已经有了3-4年了,所以对预算的理解有了一定的基础,但在写代码之前,我必须深入研究双账户制, 因为我担心提供给其他人任何与金额相关的功能时,没有实际理解,很害怕自己可能犯错误。因此,我甚至开始学了双账户制的课程,随后才开始开发。
除了那两个书籍之外,我还很兴奋地阅读了(我强烈推荐给所有有兴趣系统设计和软件架构的人):
- 《设计数据密集应用》by M. Kleppmann
- 和《设计分布式系统》by B. Burns
这些书籍帮助我在系统设计和工具之使用方面建立了更大的信心。
这非常难以解释,并且在2026年难以理解,但我和女朋友花了很多时间来尝试不同的UI风格,甚至花了几个月甚至是几个星期来把所有重要的用例尝试来覆盖 automated tests。
主要的挑战是让不同设备之间的同步。因为多台设备都是我们家庭预算的一部分,所以在线和离线都有sync的要求,所以我尽我所能去解决这个问题。
为了解决这个问题我应用了一个非常复杂的(基于机器时钟)的冲突解决策略。真的是我花了有两整个月来改写这个部分,写了多个测试并且去找边界线。
随后的就有了分成不同语言的阶段,写清晰的隐私政策,条款等等,devops之后才有了好的设备安全。接下来就有了发布的阶段。
评论 (0)