个人记账app(一)需求设计
时间如流水,只能流去不流回。
学历代表你的过去,能力代表你的现在,学习能力代表你的将来。
学无止境,精益求精。
一、开发背景
Android应用市场记账的app那么多,我为什么还要再开发一个呢?重复造轮子有意思吗?
简单回答上面的自我提问:
- 为什么要开发?我自己开发,主要是方便自己用,市场上的app,有些记录的数据是放在服务器上的,无网络或者网络信号差时,app加载很慢或者就无法使用了。
- 重复造轮子?最近在自学flutter,也是为了赶上这个热度,学点新知识,技多不压身嘛,做这个app也是巩固自己的学习成果。
二、开发技术
app采用dart+flutter框架开发,数据库使用android常用的本地数据库sqlite。
四、功能列表
- 支持收入与支出的分类管理,如增加支出类型:餐饮、交通、走人户等;
- 支持录入新的支出与收入记录;
- 支持记录统计,如一周消费统计;
五、数据库表设计
表1、类别表
每笔收入或者支出类型,方便统计查看:
| 字段名 | 标示(简写) | 必选 | 字段类型 | 推荐长度 | 默认值 | 字段描述 |
| ID | id | ▲ | 整型 | 主键,自增字段 | ||
| 父类别ID | pid | ▲ | 整型 | 0 |
父类别ID(PAC_TYPE主键ID),类别有两级,如基本生活为一级,其下又 细分为柴米油盐、物业水电、水果零食、日常用品的 小类别。 |
|
| 名称 | name | ▲ | 字符串 | 10 | 类别名称,如基本生活、柴米油盐、物业水电 |
表2、记录表
每笔收入或者支出的详细信息:
| 字段名 | 标示(简写) | 必选 | 字段类型 | 推荐长度 | 默认值 | 字段描述 |
| ID | id | ▲ | 整型 | 主键,自增字段 | ||
| 类别ID | typeid | ▲ | 整型 | 类别ID(PAC_Type主键ID,二级类别ID) | ||
| 备注 | memo | 字符串 | 50 | 该笔收入或者支出详细说明 | ||
| 消费时间 | time | ▲ | 无符号整型 | 11 | 支出或者收到时间,使用无符号整型记录 |
六、原型设计
先简单做做原型设计,主要有记录界面、统计界面等,未完待续...
个人记账app(一)需求设计的更多相关文章
- [转]Android App整体架构设计的思考
1. 架构设计的目的 对程序进行架构设计的原因,归根到底是为了提高生产力.通过设计使程序模块化,做到模块内部的高聚合和模块之间的低耦合.这样做的好处是使得程序在开发的过程中,开发人员只需要专注于一点, ...
- 15款优秀移动APP产品原型设计工具
一新来小盆友问:“移动产品原型设计都用啥工具?” 答:“@#¥……&%*” 又问:“能详细说下各个工具吗?我比较一下” “……” 好吧,谁让我那么的爱分享而你又是小美女呢 ———————正文开 ...
- Android APP开发需求文档范本
Android APP开发需求文档范本 软件需求文档格式的标准写法 1.引言 1.1 编写目的 • 阐明开发本软件的目的: 1.2 项目背景 • 标识待开发软件产品的名称.代码: • 列出本项目的任 ...
- app开发需求文档怎么写
我们在开发app前都会做需求分析,这个app开发需求文档怎么写呢?一般可以从这几点入手:确定APP方案的目标,APP方案的受众分析,APP开发方案功能设计,APP的操作系统说明方案,APP是是否是原生 ...
- [需求设计]从一个小需求感受Redis的独特魅力
分享一个简单的小需求应该怎么设计实现以及有关Redis的使用 Redis在实际应用中使用的非常广泛,本篇文章就从一个简单的需求说起,为你讲述一个需求是如何从头到尾开始做的,又是如何一步步完善的.之前写 ...
- 团队项目-记账App
一.团队成员介绍 队长: 向瑜 博客园地址: https://www.cnblogs.com/xiangyu721/ 沟通能力较强,善于总结,能够正确分配团队任务.其次,有耐心学习新事物,发现新问题 ...
- android软件简约记账app开发day10-主页面模块--头信息的展示,和之后功能完善的目标。
android软件简约记账app开发day10-主页面模块--头信息的展示,和之后功能完善的目标. 今天来写主界面头信息的展示,也就是将第一天的写的layout中的item_main_top展示到主界 ...
- android软件简约记账app开发day08-时间对话框的书写+改bug,改bug
android软件简约记账app开发day08-时间对话框的书写+改bug,改bug 绘制对话跨页面 在添加记账信息功能中,我提供了用户添加备注添加事件的功能,设计是点击时间会弹出一个时间对话框供用户 ...
- android软件简约记账app开发day04-记账页面条目的代码书写
android软件简约记账app开发day04-记账页面条目的代码书写 在前三天我们完成了基本的界面展示,从今天开始,我们进入到后台逻辑代码的编写中,今天开发记账条目的代码 我们在主页面点击记一笔图标 ...
- Android App的架构设计:从VM、MVC、MVP到MVVM
随着Android应用开发规模的扩大,客户端业务逻辑也越来越复杂,已然不是简单的数据展示了.如同后端开发遇到瓶颈时采用的组件拆分思想,客户端也需要进行架构设计,拆分视图和数据,解除模块之间的耦合,提高 ...
随机推荐
- spring注解方式,异常 'sessionFactory' or 'hibernateTemplate' is required的解决方法
做单元测试的时候,抛出异常 Caused by: java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' ...
- BUG 的生命周期
BUG 的生命周期 Bug-->软件程序的漏洞或缺陷 Bug 的类型:代码错误.设计缺陷.界面优化.性能问题.配置相关.安装部署.安全相关.标准规划.测试脚本....其他(功能类.界面类.性能类 ...
- Maven 梳理 - maven新建web项目提示"javax.servlet.http.HttpServlet" was not found on the Java Build Path
方法一: <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api&l ...
- 如何免费使用GPU跑深度学习代码
从事深度学习的研究者都知道,深度学习代码需要设计海量的数据,需要很大很大很大(重要的事情说三遍)的计算量,以至于CPU算不过来,需要通过GPU帮忙,但这必不意味着CPU的性能没GPU强,CPU是那种综 ...
- Andorid监听SoftKeyboard弹起事件
对于Android键盘事件Google并没有提供一个好的接口去监听它,有时候就为项目需要就必须要自己去想办法去监听,由于我最近也要实现登陆与注册的功能,我的想法很简单实现起来也比较容易,主要的原理是在 ...
- java+maven+jenkins+svn构建
操作参照:https://blog.csdn.net/qq_34977342/article/details/82346915 1.创建一个自由风格的项目,起名字 2.设置构建项目最大保存数量,与天数 ...
- Flask基础(04)-->相关配置参数
# 导入Flask from flask import Flask from flask import config # 创建Flask的应用程序 app = Flask(__name__) #=== ...
- Eureka实战-4【开启http basic权限认证】
在我们实际生产环境中,都需要考虑到一个安全问题,比如用户登录,又或者是eureka server,它对外暴露的有自己的rest API,如果没有安全认证,也就意味着别人可以通过rest API随意修改 ...
- 定一条数据用: => slot-scope属性,再显示对应的数据
通过 Scoped slot 可以获取到 row, column, $index 和 store(table 内部的状态管理)的数据: {{scope.row}} =>获取整行的数据 {{sco ...
- 1. SOFAJRaft源码分析— SOFAJRaft启动时做了什么?
我们这次依然用上次的例子CounterServer来进行讲解: 我这里就不贴整个代码了 public static void main(final String[] args) throws IOEx ...