基于iOS的记账本App开发毕业论文
2022-01-27 15:59:06
论文总字数:22679字
摘 要
目前市场上的记账软件缺少多账户记账、每月预算等功能,针对这些问题,本文提出一种“基于iOS的记账本App开发”方法。方法采用MVC架构,采用代理和闭包传递的设计模式。UI部分采用原生UIKit框架和Auto Layout技术,并使用Storyboard设计和开发界面,数据持久化部分采用Core Data技术,动画与视觉效果部分使用CALayer和Core Graphics技术。
在Storyboard设计结构中,最底层是一个View Controller实例,其view上放置两个Container View,一个是Tab风格的顶栏,另一个嵌入一个UIPageViewController实例,用来显示账户、预算和账目的列表。底部放置一个UIView实例,点击展开,下划缩略,用来记录账目。
最后App在iOS平台测试并通过,验证了设计的有效性。该App为用户提供轻松方便的记账体验,培养记账习惯,掌控自己的收支情况。
关键词:iOS Swift CocoaTouch 记账本
The development of Accounting App based on iOS
Abstract
Currently, accounting software on the market lacks functions such as multi-account accounting and monthly budget. In response to these problems, this paper proposes an “iOS-based Bookkeeping App Development” method. The method uses the MVC architecture and adopts a design pattern of proxy and closure delivery. UI uses native UIKit framework and Auto Layout technology, and uses Storyboard to design and develop interfaces. Core Data technology is used for data persistence, and CALayer and Core Graphics are used for animation and visual effects.
In the Storyboard design structure, the bottom level is a View Controller instance. Two Container Views are placed on its view, one is a Tab-style top bar, and the other embeds a UIPageViewController instance in itself to display a list of accounts, budgets, and accounting notes. An instance of UIView is placed on the bottom, expands by taping, hide by swiping down, which is used to record the accounting notes.
The app is finally tested and passed on the iOS platform, which verified the effectiveness of the design. The app provides users with an easy and convenient billing experience, fosters account keeping habits, and controls their own income and expenditure.
Key Words: iOS; Swift; CocoaTouch; Accounting
目 录
摘 要 I
Abstract II
第一章 引言 1
1.1 同类App(记账本)的现状 1
1.2 设计对于现状的改进 1
1.2.1 交互方面 1
1.2.2 功能方面 1
1.3 意义 1
第二章 开发环境与架构设计 3
2.1 开发环境与平台 3
2.1.1 iOS平台 3
2.1.2 Swift 编程语言 3
2.1.3 Xcode与Storyboard 3
2.1.4 Core Data 4
2.2 架构与设计模式 4
2.2.1 MVC架构 4
2.2.2 代理模式与闭包传递 4
第三章 主要模块接口与类的设计 6
3.1 模块设计与相关类 6
3.1.1 账户模块 6
3.1.2 预算模块与账目模块 7
3.1.3账目记录模块 8
3.2 类的设计 9
3.2.1 总体设计 9
3.2.2 MVC在类的设计中的体现 10
第四章 数据设计 14
4.1 Core Data基本原理 14
4.1.1 Core Data Stack结构与运作原理 14
4.1.2 Core Data中的数据设计 14
4.1.3 Core Data 中的FetchedResultsController 15
4.1.4 Core Data中的数据操作 16
4.2 数据设计 16
4.2.1 类别模型 17
4.2.1 账户模型 17
4.2.2 预算模型 17
4.2.3 账目模型 17
第五章 主要功能设计 18
5.1 账户功能的设计 18
5.1.1 界面设计 18
5.1.2 基本操作 19
5.2 账目功能的设计 22
5.2.1 界面设计 22
5.2.2 基本操作 24
5.3 预算功能的设计 25
5.3.1 界面设计 25
5.3.2 基本操作 27
5.4 滑页功能的设计 28
5.4.1 自主开发的NCPage框架 28
5.4.2框架的实现 29
第六章 结束语 31
参考文献 32
第一章 引言
1.1 同类App(记账本)的现状
目前流行的比较优秀的记账本都具有一定的缺陷[3]:
- 过于简单:交互轻便简单,可以迅速记录账目,但是功能单一;
- 过于复杂:账本功能强大,但是操作繁琐,用户很难有随手记录的习惯;
- 缺少部分功能:有些账本能分多个账户记账(比如分为多张不同的储蓄卡,或者替家庭成员记账等),却缺少月度预算功能(比如为食品支出设置预算2000元每月,记账的同时,随时查看预算的消耗情况)。有的账本则正好相反;
- 使用场景局限:比如银行的手机客户端、支付宝账单等,仅能记录自己所在平台产生的交易或转账。
1.2 设计对于现状的改进
1.2.1 交互方面
App简化了记账的操作。一个是将记账需要触摸到的屏幕区域,限制在单手握手机时大拇指的活动范围内,方便用户购物之后立即记账,不需要放下手里提着的东西。另一个是将记账的操作分成了四个步骤,并配上响应的视觉颜色和效果,引导用户完成记账。大多数记账app的记账界面元素过多,造成用户浏览界面时视线混乱,花费更多的专注力,无法做到随时记账。
记账app应该将记账界面作为核心,应该做到在app的大部分页面中随时能进入记账界面,因此本app将记账做成伸缩卡片设计,持续在屏幕底部显示一个小方块,用户点击之后,卡片就会弹出并放大,立即可以开始记账。
1.2.2 功能方面
第一是加入了多账户记账的功能,用户可以将自己的各个银行账户的余额分开记录,甚至单独记录现金余额,也可以为别的家庭成员记账。多账户记账的自由度高,不必犹豫“这条该不该记录”,对账统计时也不用把各处的存款一个个加起来。
请支付后下载全文,论文总字数:22679字