毕业设计(论文)-基于iOS的家庭财务通.doc_第1页
毕业设计(论文)-基于iOS的家庭财务通.doc_第2页
毕业设计(论文)-基于iOS的家庭财务通.doc_第3页
毕业设计(论文)-基于iOS的家庭财务通.doc_第4页
毕业设计(论文)-基于iOS的家庭财务通.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

全套设计加扣 3012250582毕 业 设 计 论 文题 目: 基于IOS的家庭财务通 学 院: 计算机科学与工程 专 业: 计算机科学与技术 姓 名: 学 号: 指导老师: 完成时间: 2015.6.1 全套设计加扣 3012250582摘 要随着网络通讯从最开始的拨号上网、到有线宽带再到现在的无线 WiFi 及 3G,电脑从工作学习场所(办公室、学校机房、网吧),逐渐走向了家庭办公桌。从家庭办公桌逐渐走向了沙发、床头等休闲场所,从室内逐渐走向了室外(公共场所、户外)。消费者在使用电脑的方式在逐渐个性化、舒适化。自从 2010 年 4 月,苹果的ipoone 公开发售以来,iphone已经在开始引领一个新的移动时代,具有质量轻体积小的便携性,强大的电池续航能力,多点触摸屏幕,支持无线 WiFi 及 3G 通讯等特点,丰富的应用程序更使得人们能够轻松进行阅读电子书籍,上网浏览,听歌,看碟,游戏等各项休闲娱乐活动。iPhone必将取代上网本而成为新的市场追逐热点。该软件运行在 iOS 操作系统上,能够管理各种银行账户,记录收入支出,统计资产总账、明细,查看收支计划等,达到家庭理财的目的。和传统 PC 理财软件相比,该软件充分发挥了 iphone操作简便和使用环境无限制的特点。本系统在显示上拥有绚丽的用户界面和接口;在功能上可按用户需求将账目以各类大图表进行显示和统计获得财务分析;在操作上不再需要鼠标键盘,仅仅通过点击,轻触,滑动等简单动作即可完成需要的各项输入,使得用户无论在什么环境下都可轻松理财。关键词:移动终端;苹果手机;苹果手机操作系统;家庭理财全套设计加扣 3012250582ABSTRACTComputer has become popular from work place to family desk, from family deskto leisure place such as sofa and bed, from indoors to outdoors with the networkdeveloping from initial dial-up、wired broadband to WiFi and 3G. The tendency ofcomputer consumption is individuation and comfortableness gradually. Tablet PC havealready led a new era from iphone offering for sale in April 2010 .Tablet PC have the characters of low quality and small in size, powerful batterylife, multipoint screen, WiFi and 3G. The abundant application programs help peopleread ebook、surf in net、listen to music、watch movies and play games. Tablet PC havebecome the hotpot in stead of nettop in the new market.Here we discuss the family financial software developed which is suitable for iphone aimed at the new usage and character of tablet PC. The software can keep notes of income and outcome whenever and wherever possible, account general ledger anddetails of the property, check the plan of income and outcome to reach the goal of managing family financial transaction on the basis of iOS system.Compared with traditional PC financial softwares, this software has the characteristics such as ipad high definition screen,user-friendly control and unlimitedusage environment. The system has the gorgeous user interface and port; it can getfinancial analysis by showing and giving statistics all kinds of large charts according touser need; we can input all commands by clicking、touching and sliding without mouseand keyboard which help users conduct financial transaction regardless of anyconditions.Keywords: mobile device; iphone;iOS;manage financial transactionIV河南城建学院本科毕业设计(论文) 目录 目录摘 要I1 绪论21.1软件功能简介31.2开发背景41.3开发意义41.3国内外研究综述52 相关技术62.1 Object-c62.2 Xcode72.3 界面构建器(Interface Builder)82.3 第三方库92.4开发思路技术93 需求分析103.1 用户需求分析103.2 功能需求分析103.2.1 个人消费管理模块103.2.2 家庭消费管理模块103.2.3 银行存款管理模块103.2.4 财经动态模块113.2.5 娱乐消遣模块113.3 功能模块设计113.4 数据库需求与设计113.4.1 数据表113.4.2 数据库E-R图124 可行性分析144.1 功能分析144.2 决定可行性的主要因素144.3 可行性研究任务144.4 可行性研究结论145 系统设计155.1 框架设计模块155.2 项目类图设计156 功能实现166.1个人主页面166.2个人子页面196.2.1家庭成员添加子页面196.2.2家庭成员消费信息查看或添加子页面216.3 家庭主页面256.3.1家庭信息查询256.3.2家庭消费详情页面266.4银行存款管理页面296.4.1银行存款记录296.5财经娱乐主页面316.5.1 建立model336.5.2建立view336.5.3 网络数据的获取33结束语36参考文献3737全套设计加扣 30122505821 绪论本次毕业设计的题目是“基于IOS的家庭财务通”,自从改革开放以来,中国的经济发展可谓是突飞猛进,人民的生活水平也是迅速地提升,经济繁荣也是更加的多样化,但是,在如此快速的生活节奏中,人们也需要对自己的经济状况有一个更加的有效的掌握,因为在很多的时候人们发现自己辛辛苦苦挣得钱,不知道怎么的就没了,而且甚至回想起来还不知道自己都花在了什么地方。自从进入二十一世纪以来,我们已经进入了移动互联时代,人们的生活方式也是发生了翻天覆地的变化,手机,尤其是智能手机的加入,丰富了人们的生活,是人们的生活也更加的便捷,生活中的琐事往往只是在一个简简单单的触摸之间就可以解决,而在智能手机的行业中,看中的就是手机的操作系统了,记得当初有,塞班,黑莓,安卓,IOS,wp最为值得关注,但随着优胜劣汰的不变法则,现如今最值得关注,也是最火热的就是安卓与IOS两大操作手机系统,市场上的大部分手机装的都是安卓操作系统,而IOS操作系统就是苹果公司的专项,但其影响力以及用户的反响以及全球上的销量使其拥有不可撼动地位。有需求就有供应,智能手机再高端,操作系统再强悍,也是需要软件去丰富它,有了各种各样的软件,手机也就能够发挥出更大的功效,也就因此也就使得手机软件开发这一行业能够迅速的壮大,各种各样的软件也是层出不穷。 随着生活水平的提高,人们更加关注与与自身相关的软件,像一些健康管理软件,饮食,健身,什么的。我看网上有很多的类似软件,但是大多数都是应用于电脑平台上的,当然也有一些手机平台上的,但是很少。所以我觉得这款软件还是可以的,正所谓经济是国家的唯一命脉,而对于我们个人来说,也是非常重要的,就像那句老话,金钱不是万能的,但是没有钱是万万不能的,合理的管理好自己的金钱,可以对自己的生活有一个更加有效的把握。而本软件,基于IOS的“家庭财务通”,是一款家庭财务管理软件,其致力于家庭内部的简单财务管理,是应用于IOS平台,也就是应用于苹果手机上的软件,说到这里就不得不说一下苹果公司,苹果公司总部位于美国的加利福尼亚,苹果公司成立于1976年4月1日。其创始人乔布斯在人类发展上作出了重要的贡献。苹果公司的微机平台操作系统就不介绍了,在这里重点介绍IOS这个苹果公司推出的移动操作系统,它是以Darwin为基础的,因此同样是类似UNIX的商业操作系统,原名称是iPhone OS直到2010年才正式改为IOS,它具有非常简单易用的界面。还有很多非常丰富的功能,是其他移动终端不曾出现的实在是令人惊叹,并且其具有超强的稳定性。IOS这个操作系统具有很多的优点,第一,其具有一致性,如果缺乏一致性,那么IOS就什么都不是了。第二,其具有华丽的界面,当用户拿到一个手机,其首先点亮屏幕看到的就是操作系统的界面,如果你界面做的非常的漂亮,那么你就赢得了用户的第一印象,虽然说IOS的界面做的非常的华丽,但是又不会使人感到非常的无从下手,苹果公司投入了非常多的精力在此,IOS具有最直观的用户体验。第三,数据的安全性,每个人都有自己的隐私,并且不希望别人知道,而IOS就具有着强大的防护能力,用户的信息不回被泄露,在这一点上,安卓就做的非常的差,但毕竟安卓是开源的,人们可以根据自己的需要随意的编写应用,如果被不法之徒利用就会造成用户的不安全。当然了IOS也不是完美的,它也有很多的缺点,当然这一部分的原因也主要是因为IOS系统的闭源性。下面介绍一下IOS开发所使用的语言,也就是object-c,简称oc语言,其根据c语言衍生出来,但又有c语言所没有的面相对象的特性。其实就我学习IOS的这段时间来说,我觉得IOS的最大的特点就是内存管理方面做得比其他的移动操作系统好的多,这也就使得IOS操作系统用着非常的流畅,使苹果手机可使用比较低的硬件配置就可以达到用户的需求。1.1软件功能简介下面就正式介绍一下我的这个毕业设计,首先说一下这款软件的整体框架,这款软件包含了五个主页面,有个人管理页面,家庭管理页面,银行存款管理页面,财经咨询页面,以及一个闲时无聊用于娱乐的娱乐页面,而在个人管理页面中可以通过添加按钮进入人员的添加页面,在个人管理页面中,如果有已经添加过的人员,就会显示再次,可以通过点击的方式,进入每个人的消费信息页面,在此页面可以查询消费情况,也可以添加要记录的消费情况,点击此页面中的图形比例显示,可以跳转到详细消费页面,在此页面可以看到有图形比例显示,可直观的看出消费的对比情况,也可以在此页面看到至今为止所有的本人消费记录,在家庭管理页面中,可以添加消费记录,也可查询消费总金额,在此页面中,也可跳转到家庭消费信息详情页面,在此页面同样有图形显示比例,也可显示所有的家庭消费记录,在银行存款管理页面,可以添加和查询各个银行里的存款情况,在财经资讯页面中是抓的凤凰新闻中的财经接口,最后为了不无聊,有添加了一个娱乐页面。接下来就介绍一下本人制作这个毕业设计的流程,由于笔者通过制作五个主页面,显示在屏幕下方,使可以通过点击来切换,所以就要用到UItabbarcontroller,这是IOS中的一个非常重要的控件,中文是选项卡栏导航控制器,顾名思义,大家大概能猜到其用在什么地方,在这个控件中我需要放入五个UIviewController即视图控制器,并在tabbarController中分别命名为,“个人”,“家庭”,“财经”,“存款”,“娱乐”,通过点击下面的五个选项卡就可以进入到相应的五个主页面中。1.2开发背景该基于IOS的家庭财务通软件开发主要是为了满足家庭里的基本财务管理需求,在日益快速发展的今天,我们需要能够应对这种环境,管理好自己的经济就是必不可少的一个环节,因此我们需要一个专业的财务管理软件,让自己能够随时随地的查看自己家庭的经济开销,使能够更加合理的管理自己家庭的经济开销1.3开发意义理财(Financial management)是指对于个人或家庭对于所拥有的有形以及无形资产的经营活动。财产拥有人根据所拥有的资产状况,设定一个自己期盼的目标,通过各种投资活动开源节流,使得总资产可以得到更好的利用率和增长收益。现今的社会,财商也成为了个人能力的一个组成部分。在一个经济社会中,学会合理的理财对于个人和家庭的生活品质、培养良好的习惯都是至关重要的。在家庭理财中,记账是一个重要但是最基本的事情,大部分的人都不容易坚持下来。长期的记账习惯,不仅能使个人和家庭清晰的掌握家庭财务状况,而且能够让全家人养成自律的习惯,懂得合理适当的消费,而不是随意、胡乱的花钱。家长的以身作则更是对孩子从小养成勤俭节约的良好品质起到了榜样作用。如果不记账,不去理财,那么钱花在什么地方,是否起到了关键作用,都无从知晓。通过记账能够清楚的知道家庭收入支出的比例,才能制定合理的理财投资计划。通货膨胀每年都不断偷偷侵蚀家庭财产,所以必须争取把损失控制在最小。通过记账,可以有效的减小开支,并且将结余通过适当的途径变成收益,去实现全家的目标,去更好的生活,提高家庭抵抗意外风险的能力。不去理财,心中没有计划,当风险意外来临时,完全有可能毁掉我们的幸福生活。通过全家理财,大家更会懂得凡事预则立的精神。在全家为同一个目标去奋斗的过程中,能让全家人更加团结。理财目标的达成、生活品质的提高,会让全家人更感觉到家庭的幸福生活,从而促进全家的感情更加融洽、和谐。随着现在生活水平的提高,大家都开始逐渐增强了理财的理念。正确的理财不仅仅是为了勤俭节约、财产的增值,通过每天坚持记账的习惯,做好阶段的支出计划,科学经济地做好理财规划,更是提高自己对财产的掌控能力,培养良好的金钱观。1.3国内外研究综述在国外,对于在IOS上的家庭财务管理软件其实和国内的是差不多的,这就要感谢于苹果了,因为苹果公司对IOS的垄断,他们对于IOS的不开源,是的一切的在IOS上运行的软件都要经过苹果公司的审查,并且要统一放在苹果的APPStore上进行供用户的下载,所以基本上不论在国内外,只要是在APPStore上的软件,对于大家来说都是一样的。但是在 看过APPStore上的此类软件之后,我觉得这类软件还是有些复杂,不能够一目了然,而我的这款软件是简洁,还算全面的管理。全套设计加扣 30122505822 相关技术2.1 Object-cC 程序设计语言是由 AT&T 贝尔实验室的 Dennis Ritchie 于 20 世纪 70 年代早期首创的,它的灵活,快速使得它现在依然是最主要的编程语言之一。 1980 年代初布莱德确斯(Brad Cox)在其公司 Stepstone 发明 Objective-C。他对软件设计和编程里的真实可用度问题十分关心。Objective-C 最主要的描述是他于 1986 年出版的Object Oriented Programming。Objective-C 是建立在 C 语言之上,它是 C 的超集,它在原有 C 语言的基础上吸收了 smalltalk 面向对象的思想,使得它成为了真正的面向对象的语言之一。面向对象的理念使得用 Objective-C 开发 MAC、iOS 上的程序更加快捷、方便、直观,在程序优化时更容易被程序员理解和重构,提高了程序开发时的效率。在1992年时,Objective-C语言便被GCC支持,但是由于Windows公司选择了支持 C+,Objective-C 一直没能被广大开发者所认识。NeXT 公司一直是 Objective-C 积极的支持者,他们为 Objective-C 语言设计了一种快速开发工具RAD 后开始流行,即今天的 XCode 前身。后来苹果公司继承了他们这门有的开发语言,为了吸引苹果开发者开发更多的苹果应用程序,苹果公司又推出了 Cocoa开发库,即 OS X 的核心 API,并一直不断在更新和改进。MAC 和 iOS 上的程序几乎都是使用 Objective-C 开发的。由于程序员基本上都有 C 语言的基础,学习Objective-C 更是事半而功倍,并且随着近几年来手机和平板电脑开发的热度,使Objective-C 语言的在开发者的地位中直线上升。Objective-C 作为 C 语言和 smalltalk 语言的集大成者,它不仅融入了smalltalk的面向对象思想,也继承了 C 语言的短小精悍。在 Objective-C 语言体系中,通过加入一些新的关键字和编译器指令,使得 C 风格的程序也可以使用 smalltalk 风格的方式向对象发送消息。在 Objective-C 语系中,消息可以发送给任何对象不管这个对象是否能具有处理这个消息的能力。在 Objective-C 程序中,可以直接使用 C语言的语句,因为 Objective-C 的编译器也能同时编译 C 语言。在 Objective-C 语言定义的类中也可以自由使用 C 语言。在 Objective-C 语系中,所有与对象无关的操作定义都是与 C 语言一样,而当操作涉及到对象时,又采用的是 smalltalk 的消息模式。12Objective-C 和 C+的比较具有以下特点:(1)单一继承:Objective-C 不支持多重继承,(同 Java 和 Smalltalk),而 C+语言支持多重继承。(2)动态:Objective-C是动态定型(dynamicaly typed)所以它的类库比 C+要容易操作。Objective-C 在运行时可以允许根据字符串名字来访问方法和类,还可以动态连接和添加类。C+ 跟从面向对象编程里的 Simula 67(一种早期 OO 语言)学派,而 Objecive-C 属 Smalltalk学派。在 C+里,对象的静态类型决定你是否可以发送消息给它,而对 Objective-C来说,由动态类型来决定。Simula 67 学派更安全,因为大部分错误可以在编译时查出。 而 Smalltalk 学派更灵活,比如一些 Smalltalk 看来无误的程序拿到 Simualr67 那里就无法通过。从很多方面来看,C+和 Objective-C 的差别,与其说时技术上的, 不如说是思维方式上的。你是否想更安全而舍弃灵活性?Simular67 学派的支持者声称既然程序设计出色何必再要灵活性,而 Smalltalk 学派则辩称为了灵活可以容忍运行时多出错。2.2 XcodeXcode 是一个强大的专业开发工具,可以简单快速、而且以您熟悉的方式执行绝大多数常见的软件开发任务。相对于创建单一类型的应用程序所需要的能力而言,Xcode 要强大得多,它的设计目的是使您可以创建任何想像得到的软件产品类型,从 Cocoa 及 Carbon 应用程序,到内核扩展及 Spotlight 导入器等各种开发任务,Xcode 都能完成。Xcode 独具特色的用户界面可以帮助您以各种不同的方式来漫游工具中的代码,并且使您可以访问工具箱下面的大量功能,包括 GCC,javac,jikes和 GDB,这些功能都是制作软件产品需要的。它是一个由专业人员设计的、又由专业人员使用的工具。由于能力出众,Xcode 已经被 Mac 开发者社区广为采纳。而且随着苹果电脑向基于 Intel 的 Macintosh 迁移,转向 Xcode 变得比以往的任何时候更加重要。使用 Xcode 开发程序时,是以 Xode 工具为中心来进行项目的创建和编辑,直到最后应用程序的链接和调试。Xcode 工具会对项目中使用和需要的文件、资源进行优化分类组织,帮助程序员进行文件管理。在 Xcode 中,一般把文件资源分为三大类:源文件、目标和执行环境。源文件的引用,一般是包含程序的源代码、图片、本地化的字符串文件、数据模型和一些其他文件。目标是工程需要完成的产品。目标可以将工程中的文件和指令组织为一个可以连续执行的动作序列。执13行环境即最后工程产品的运行和测试环境。可以在执行环境中去定义产品运行时需要的程序。这个程序可以是产品本身或是不是产品本身。还可以在执行环境中去定义环境变量和一些命令行参数。放置在窗口上,你可以通过拖拽来移动它们,利用查看器修改他们的属性,以及在这些对象和你的代码之间建立联系,当界面达到你的要求时,你可以保存这些内容为 nib 文件,这是一种定制的资源文件格式。在界面构建器中创建的 nib 文件,包括 UIKit 框架在运行期间在应用程序中重建相同对象所需要的全部信息。装入 nib 文件会创建保存在文件中的所有对象的运行期间版本,严格按照界面构建器中的配置。程序还使用关键字 IBOutlet和 IBAction 在 Xcode 中用来声明属性和方法,在 Interface Builder 中与这些声明建立连接。这些连接为你的代码提供了 nib 文件对象的指针,以及提供了在代码中对象和用户动作通讯需要的信息,16在 Xcode 中构建应用程序,你可以选择为 iPhone 模拟器创建,也可以选择为iPhone 设备创建。模拟器提供了测试应用程序的本地环境,可以确保你的程序行为完全符合你的需求。当你对程序的基本行为已经满意后,你可以告诉 Xcode 构建它,然后在连接到你的计算机上的 iPhone 和 iPod touch 上运行它。在设备上面运行程序提供了终极测试环境,而且 Xcode 可以把内建调试器植入运行在设备上的代码中。2.3 界面构建器(Interface Builder)Interface Builder 有一段较长的历史。它于 1988 年首次面世,并且曾用于为NextSTEP、OpenSTEP、Mac OS X 和现在的 iPhone 开发应用程序。Interface Builder支持两种文件类型:使用.nib 扩展名的旧格式和使用.xib 扩展名的新格式。实际上,苹果公司在其文档中统一使用术语nib和nib 文件。界面构建器是用来可视化装配应用程序用户界面的工具。使用界面构建器,你可以用拖拽预置组件的方式装配你的程序窗口。组件包括标准的系统控件,例如选择器,文本框,按钮,还包括用来展现程序提供的视图的定制视图。当你把境即最后工程产品的运行和测试环境。可以在执行环境中去定义产品运行时需要的程序。这个程序可以是产品本身或是不是产品本身。还可以在执行环境中去定义环境变量和一些命令行参数。Xcode 如何使用源文件引用、目标、和执行环境。当开发人员执行连编和运行命令(Command-R)时,Xcode 会对指定的目标进行处理,该目标则执行一系列对源代码进行操作的动作,并最终生成一个产品。然后,Xcode 就用当前活动的执行环境运行该产品。创建一个新的 iPhone 应用程序,从在 Xcode 创建一个新的项目开始。一个项目,管理与你的程序所有相关的信息,包括源代码,构建设置,以及需要放在一起的规则。每个 Xcode 项目的核心就是项目窗口,这个窗口提供了快速访问你的程序所有关键元素的途径。文件和文件组列表是你管理项目中文件的地方,包括你的源代码文件,以及从这些源代码文件创建的构建目标。工具栏提供访问常用工具和命令的途径,细节面板提供一个对你项目的工作可配置的空间。项目窗口的其他部分提供了项目的其他信息。Xcode 的项目窗口。14Xcode 是一个强大的专业开发工具,可以简单快速、而且以您熟悉的方式执行绝大多数常见的软件开发任务。相对于创建单一类型的应用程序所需要的能力而言,Xcode 要强大得多,它的设计目的是使您可以创建任何想像得到的软件产品类型,从 Cocoa 及 Carbon 应用程序,到内核扩展及 Spotlight 导入器等各种开发任务,Xcode 都能完成。Xcode 独具特色的用户界面可以帮助您以各种不同的方式来漫游工具中的代码,并且使您可以访问工具箱下面的大量功能,包括 GCC,javac,jikes和 GDB,这些功能都是制作软件产品需要的。它是一个由专业人员设计的、又由专业人员使用的工具。由于能力出众,Xcode 已经被 Mac 开发者社区广为采纳。而且随着苹果电脑向基于 Intel 的 Macintosh 迁移,转向 Xcode 变得比以往的任何时候更加重要。使用 Xcode 开发程序时,是以 Xode 工具为中心来进行项目的创建和编辑,直到最后应用程序的链接和调试。Xcode 工具会对项目中使用和需要的文件、资源进行优化分类组织,帮助程序员进行文件管理。在 Xcode 中,一般把文件资源分为三大类:源文件、目标和执行环境。源文件的引用,一般是包含程序的源代码、图片、本地化的字符串文件、数据模型和一些其他文件。目标是工程需要完成的产品。目标可以将工程中的文件和指令组织为一个可以连续执行的动作序列。执13总的来说同时使用 Xcode 和 Interface Builder 工具,简化代码,便于维护,加快开发,使用 Xcode 来设计程序的逻辑,使用 Interface Builder 来设计程序的界面。界面构建器为你创建程序用户界面节约了大量的时间。界面构建器节省了创建,配置和定位构成用户界面的对象所需要的定制代码。因为它是一个可视化编辑器,你可以看到与运行期间完全相同的界面。2.3 第三方库有时候官方的不一定是最好的,苹果所做出来的东西,有时在实际的开发中使用起来很是麻烦,所以有很多的大型公司为了自己开发软件的效率更加的高,并且能够做出更多效果不同的东西,就自己封装一些库,并且开源给开发者,这些库会比官方的更加的好用,比如在该设计中使用到的就有,ego,FMdatbase等。2.4开发思路技术本次开发采用MVC思路,即Model,View,Controller。采用这种设计思路可以使得开发时的思路更加的清晰,层次分明,阅读行极强。全套设计加扣 30122505823 需求分析3.1 用户需求分析本软件面向的用户是普通的家庭,用户对于苹果手机的使用和理财的知识水平参差不齐。而苹果手机的优势在于屏幕的适用性以及简单操作带来的良好的用户体验,因此本系统应该是追求简单,实用性和良好的用户界面。 本系统主要是应用户需求,使用苹果手机对家庭成员消费践行管理,银行账户进行管理,对家庭日常的收支,计划等相关的各种信息进行记录,删除,查询等操作,并实现对总收支的统计、记录,最后以图表形式进行账目显示、财务分析,而设计的家庭理财软件。从而让用户能够清晰掌握家庭总体收支情况,从而实现家庭的理财计划。所以,本系统需要具有以下功能: (1)能够实现家庭财务管理方面的各项功能,能成功的对用户各种收支数据信息进行处理。 (2)实现添加数据,查询,修改,删除等操作方便 ,记录的数据稳定 性和可靠性好。 (3)以统计的图表直观显示数据库中记录的数据信息,给出简单的财务分析。 (4)良好的人机界面,操作简单方便,无使用地点限制。3.2 功能需求分析3.2.1 个人消费管理模块在这一模块中可以添加需要管理的用户,对添加过的用户就可以对其进行日常消费的记录,并且可以进行消费记录的查询。为了能够直观的显示出用户在哪方面的消费过高,创建出各个消费项的柱状图。通过这个模块可以清晰的了解用户的消费习惯,并对其进行良好的纠正。3.2.2 家庭消费管理模块本模块主要是用于记录家庭整体消费,并且可以进行消费的查询。为了能够进行家庭成员之间的消费高低的对比,创建出家庭成员总消费的柱状图。通过这个模块可以清晰的看出家庭成员里谁的消费较高,可以对其进行良好的限制。3.2.3 银行存款管理模块本模块是用于记录各个银行卡的存取款记录,并且能根据银行卡进行存取款的查询,可以实时得到银行卡中的余额。通过本模块用户可以掌握到自己的银行存款。对自己家庭的经济状况有个正确的把握。3.2.4 财经动态模块本模块是互联网上的一些应用,主要是从凤凰新闻的财经频道获取数据,经过解析重新布置在全新的UI布局中。通过本模块用户可以实时的了解到财经动态,使用户对自己的投资风向有个参考,降低投资风险。3.2.5 娱乐消遣模块本模块是互联网上的一些应用,从内涵段子中的趣味接口进行获取数据,经过解析布置在全新的UI布局中。通过本模块用户可以在闲暇之余看一些趣味图来丰富自己的生活。3.3 功能模块设计根据以上的系统功能需求分析,考虑将整个程序的功能模块分解为如图3.1所示的模块图。 3.4 数据库需求与设计在本理财软件中,需要涉及到的数据为用户管理,用户消费管理,家庭消费管理,银行存款管理。根据系统的要求,首先将要记录的信息分类,要记录的信息如下。(1) 用户管理:用户名,用户头像;(2) 用户消费管理:饮食消费,首饰消费,娱乐消费,其他消费;(3) 家庭消费管理:电费,维修费,日用品消费;(4) 银行管理:银行名,存取时间,取款金额,存款金额;3.4.1 数据表表 3.1 用户表 字段名(英文) 字段名 类型 允许为空 name 用户名Varchar(128)否 headImage 头像blob是 表 3.2 用户消费表字段名(英文)字段名 类型 允许为空food饮食double是jewellery首饰double是fun娱乐double是other其他double是表 3.3家庭消费表字段名(英文)字段名类型允许为空electricBill电费double是dailyThing日用品费double是Maintain维修费double是表 3.4银行存款表字段名(英文)字段名类型允许为空name银行名varchar(128)否date时间varchar(128)否putin存入double是getout取出double是3.4.2 数据库E-R图头像用户名用户图 3.2 用户E-R图其他消费用户消费娱乐消费首饰消费饮食消费 图 3.3 用户消费E-R图家庭消费日用品费维修费电费图 3.4 家庭消费E-R图银行存款取出存入时间银行名图 3.5 银行存款E-R图4 可行性分析4.1 功能分析在上节已经展示过系统的功能,通过分析可以知道所有的功能都是系统所必不可少的,除了这些功能外系统功能的扩充还是很好的,所以说功能分析可以通过。4.2 决定可行性的主要因素成本/效益分析结果:效益大于成本技术可行:现有技术可以完全承担开发任务操作可行:应用能被绝大部分人快速学会使用。4.3 可行性研究任务(1) 技术可行性确保现有的技术能够解决本开发项目,系统采用oc语言开发,oc语言是苹果公司专门开发的编程语言,用于苹果设备上的应用开发。oc是在c语言上的做的面向对象的扩展,使之更加适合应用的开发,oc语言已经相当的成熟,现在属于编程语言的前三。系统开发采用Xcode,Xcode是苹果公司专门用于开发苹果软件的开发工具,其内部有各种的库,可进行各种方面的开发。(2) 经济可行性本系统是本人亲自开发,并且系统相对简单,所以,经济可行4.4 可行性研究结论根据以上几个方面的研究,在技术上、经济上和操作上都是可行的,项目进行开发是没有问题的。5 系统设计5.1 框架设计模块在开始编码之前所有的应用都应该确定所使用的框架,因为这对系统的功能和扩展性非常重要。确定所使用的框架基本上就确定了系统的功能,例如聊天系统所使用的框架和协议是asmark框架和xmpp协议,只看框架和协议就基本了解系统所做的功能和用途了。而个人理财软件应用所使用的框架是MVC协议。MVC框架设计模式分三个层次:1)视图层(View):IOS的view层一般是UI上的各种各样的控件。 2)控制层(Controller):IOS上的Controller是各种各样的视图控制器,如UIviewcontroller,UItableviewcontroller等,其上面是各种各样的视图。3)模型层(Model):是对某个数据对象的封装,将数据的各种属性,方法进行封装采用MVC的好处是界面设计人员可以直接参与到界面开发,程序员就可以把精力放在逻辑层上。而不是像以前那样,设计人员把所有的材料交给开发人员,由开发人员来实现界面。5.2 项目类图设计类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。类图不显示暂时性信息。类图是最常用的UML图,显示出类、接口以及它们之间的静态结构和关系;它用于描述系统的结构化设计。6 功能实现6.1个人主页面图6.1 个人主界面首先是第一个主页面,也就是”个人“页面,如图6.1所示,这是软件进入的页面,也可通过点击下方选项卡中的“个人“按钮所得。需要记录的用户很多,用户可以自己根据自己的家庭情况来添加需要记录消费信息的家庭成员,即可以通过右上方的添加按钮进入添加成员页面,首先要设计出”个人“页面的UI也就是UserInterface(用户界面),由于这里可能会显示很多用户的记录,所以就要用到UItableViewcontroller(表格视图控制器),其为一个可以滚动的表格。-(void)addTableView _tableView=UITableView allocinitWithFrame:CGRectMake(0, 64, self.view.frame.size.width, self.view.frame.size.height-64-49) style:UITableViewStylePlain autorelease; _tableView.delegate=self; _tableView.dataSource=self; UIImage *image=UIImage imageNamed:002.jpg; UIImageView *imageView=UIImageView allocinitWithImage:image; _tableView.backgroundView=imageView; imageView release; self hiddenExtraLine; /self.view addSubview:_tableView; self.view addSubview:self.tableView; 以上的代码段,首先创建出tableView,设置tableview的代理为当前对象,简单设置下tableview的背景图片,最后将tableview添加到当前的视图控制器中-(NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section return self.peoples.count;以上的代码段,是tableview的代理方法中的一个,其用于设置tableview中cell的个数-(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath static NSString *cellID=MyCell; MyCell *cell=tableView dequeueReusableCellWithIdentifier:cellID; if (cell=nil) cell=NSBundle mainBundleloadNibNamed:MyCell owner:nil options:nil lastObject; cell.backgroundColor=UIColor clearColor; cell setPeople:self.peoplesindexPath.row; return cell;以上的代码段,是用于处理tableview中每个cell里应该放置的内容,在这里笔者定制了cell,即MyCell,下面的代码段就是MyCell(继承自UITableViewcell)-(void)setPeople:(People *)people People *p=people retain; _people release; _people=p; self.headImage.image=people.head; .text=; roduce.text=roduce;以上的代码段就是MyCell中的关键代码,首先笔者是在.h文件中声明了People属性,此方法就是该属性的set方法,通过该方法,就可以将cell中的内容填充,而People属性其实是一个类,其是一个model,cell里就是这样的一个model-(void)tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath checkPeopleInfoController*checkController=checkPeopleInfoController allocinit; self presentViewController:checkController animated:YES completion:nil; People *people= self.peoplesindexPath.row; checkController.peopleConsume.text= stringByAppendingString:的消费明细;/ NSString *nameStr=(People *)(self.peoplesindexPath.row).name;/ checkController.peopleConsume.text=NSString stringWithFormat:%的消费明细,self.peoplesindexPath.row; checkController release;以上的代码段也是tableview的一个代理方法,其用于当一个cell被选中是调用,在这里笔者调用这个方法主要是用于向下一个页面的中传值,即向checkPeopleInfoController中的peopleConsume这个label传值。-(NSString*)tableView:(UITableView*)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath return 删除;-(void)tableView:(UITableView*)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtInde

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论