写过的第二个 App

可能是第一个比较成熟的 app。

What and Why

好久没有更新博客了。上一次更新还是在 7 月 13 日,正好过去了两个月的时间。上一篇文章是在学习 swiftUI 时记录的,如今已经完成了 100 days of swiftUI。写上一篇文章的时候还没开始做这个 App,如今已经结束了。

两个月的时间,从在家躺平到提前返校,再到开始小学期、开始暑期训练营,再到正式上课……与此同时,这个 App 的开发也正好伴随着我度过这两个月。

做的第一个 App 是在 2020 年的暑期训练营,是一个 Todo 的快应用。虽然获了奖,但确实太简单了。一个人完成的项目,并没有付出很大的精力。但是在今年的暑期训练营,深深感受到了 Android 原生开发的困难,可能这也是 Flutter 等框架兴起的原因吧。

言归正传,我的第二个 App 并不能称作“我的”,因为小组的产品和设计起了很大作用,没有她们的努力,这个 App 最终也不会呈现。特别感谢设计组的朋友,无论是界面、配色、交互等各个方面,都设计得很完美。也要感谢 iOS 组组长提供的学习机会,学到了很多。

App 的功能是记账,当这个需求发布的时候我正想找一个记账的软件,遂即开始开发。我试用了很多记账的 App,大多十分冗杂。最终我选择了 iCost,并且至今仍在使用。它界面的简介和纯粹在我看来是十分可贵的,我正需要这样一款 App。在我的 App 开发大部分完成后,我发现它和 iCost 仍有很多差距,iCost 某些方面的布局和设计十分巧妙,也正是我之后需要学习的地方。

虽然 App 的展示结束了,但我认为这款 App 的开发远没有结束。我的 commit 集中在 8 月 8 日的一周(86 commits)和 8 月 15 日的一周(10 commits),之后由于小学期、课程设计、训练营、选修课等无数 ddl 就只能搁置了,大约暂停了 25 天……直到最近才开始修改之前留下的各种 bug,还有很多功能需要完善……

目前实现的功能

主页

  • 本月支出、本月收入、结余
  • 一键隐藏
  • 月预算、日预算
  • 按日期筛选交易记录
  • 按类型筛选每日交易记录

记一笔

  • 选择交易类型(支出、收入、不计入收支)
  • 添加备注
  • 选择分类
  • 选择日期和时间
  • 填写金额

摇食堂

  • 随机选择
  • 可编辑奖池

预算

  • 预算卡片背景随剩余比例变换颜色
  • 查看预算详情
  • 预算期内交易明细
  • 可编辑预算

搜索

  • 搜索按钮和界面

账本

  • 选择账本
  • 添加账本

统计

  • 选择月份
  • 显示当月总支出、总入账
  • 显示当月的每日支出和收入对比
  • 显示当年的每月支出和收入对比
  • 长按折线图可显示具体金额
  • 显示当月的支出排行榜(金额排序)
  • 显示当月的全部支出排行
  • 不同排序方式(按金额和按时间)

账户

  • 添加不同类型账户
  • 添加每个账户的资产和备注
  • 自动计算总资产
  • 添加负债(可选)
  • 自动计算净资产

设置

  • 记账日报
  • 记账月报
  • 分类管理
  • 常见问题
  • 问题反馈

TODO

还有很长的路要走……所以先告一段落吧,希望有朝一日可以把 App 完善得更好。