版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 河北农业大学毕业论文河北农业大学 本科毕业论文(设计) 题 目: 爱宠物之宠物世界 学 院: 信息科学与技术学院 专业年级: 计算机科学与技术1001 学 号: 学生姓名: 指导教师姓名: 指导教师职称: 教授 二O一 四 年 六 月 一 日 摘 要 随着现代人们生活质量的提高,人们的生活压力也在无形中增大,宠物已经逐渐成为了人们的朋友,养宠物成了某些家庭不可或缺的一部分,传统的狗市已经不能满足狗迷朋友们的需求,随着计算机技术的飞速发展,以及互联网时代的跨步前进,移动互联也为宠物饲养带来了方便,宠物商店,宠物玩具,宠物食品,以及宠物医疗都可以通过互联网来体现其存在的价值,本文设计了关于宠物的
2、资讯,养护,训练等的一款综合性软件。本文详细介绍了宠物世界软件的开发过程以及设计方案,论文遵循软件工程的方法,详尽论述了需求分析、系统分析、概要设计、详细设计、以及测试与调试的整个开发过程,总结了开发过程中积累的经验和遇到的问题,预计了开发预期的结果以及本系统今后的改进方向。本软件采用的开发方法有,首先采用了通知中心,被监听者发出广播,监听者监听消息执行相应的操作。本文在页面的交互中还用到了代理协议的方法,在页面传值中这种方法很常见,需要代理的页面设置代理方法,委托代理执行代理方法,而代理则负责实现代理方法,该软件实现过程中很好的运营了协议代理。此外,该软件实现的接口有二十个,每个接口都是通过
3、网络数据解析来实现,通过json解析数据,将数据放到需要显示的UI界面和相应的控件上。本软件开发成功后可以实现对宠物有关的杂志资讯,地图定位,图片多列浏览,新浪微博分享等功能,用户可以掌上使用一款专属宠物的软件,不仅可以随时关注周边宠物,查询有关宠物的经典饲养方法,还可以随时随地的分享自己爱宠的生活趣事,也可以与周边的朋友们交流心得。该软件的技术实现包括实现了复杂UI界面的搭建,自定义控件的实现,用瀑布流多列图片浏览,使用百度地图实现地图定位,路线查询,以及正向逆向编码,计算两坐标之间的位置,实现新浪微博分享等。本软件的开发工具是Xcode-5.0,此版本的Xcode的内存管理是有选择性的,既
4、可以手动管理内存,也可以使用ARC来自动管理内存,ARC是大家公认的很好的内存管理工具,可以自动解决内存泄漏问题,宠物世界的编写就采用了ARC来管理内存。本程序的编程语言是Object-c,这是一种基于c的面向对象语言,是很实用的一种语言,Object-c语言是ios应用程序开发的利器。本软件的开发过程遵循了软件工程的方法,经过将近三周的开发过程,基本实现了预期的功能,当然还有些不足之处,本软件将会是一款实用的软件,会有其存在的价值。关键词:宠物世界 需求分析 地图定位 微博分享 ARC Abstract With the improvement of peoples quality of m
5、odern life, peoples lives are virtually the pressure increases, the pet has gradually become the peoples friends, pets become an integral part of some families, the traditional city has been unable to meet the dog dog fans and friends of demand, with the rapid development of computer technology, as
6、well as stepping forward Internet era, mobile Internet has brought convenience for pets, pet shops, pet toys, pet food and pet care are available through the Internet to reflect the value of its existence, the paper design information about pets, maintenance, training, etc. of a comprehensive softwa
7、re. This paper describes the development process and design pet in the world of software, software engineering papers follow the methods discussed in detail the requirements analysis, system analysis, outline design, detailed design, and testing and commissioning of the entire development process, s
8、ummed up the development process experiences and problems encountered accumulation expected development results and expected future direction of improvement of the system. The software development methods used are, first using a notification center, was issued a radio listener, the listener listens
9、for messages to perform the appropriate action. In this paper, the interaction of the page is also used in the method of the agency agreement, the page biography value of this approach is common, requires a proxy page setup proxy method, agency executive agency approach, and the agent is responsible
10、 for the implementation of the proxy method, the software operated well during the protocol agent. In addition, the interface of the software are twenty, each interface is achieved through a network data analysis, parsing through json data, put the data to be displayed on the UI interface and the co
11、rresponding controls. After the successful development of this software can be implemented on the magazine information about pets, location maps, pictures multi-column view, Sina Weibo and other functions, the user can use a dedicated pet handheld software, not only can keep an eye on neighboring pe
12、ts, inquiries about pets classical breeding methods, you can also share your own pet anywhere interesting life, you can exchange ideas with neighboring friends. The software technology including the realization of the construction, the realization of complex custom UI interface, with multi-column fl
13、ow waterfall picture browsing, use Baidu map to achieve positioning map, route queries, and forward reverse coding, calculated between two coordinates position to achieve Sina Weibo sharing. The software development tools are Xcode-5.0, this version of Xcode memory management is selective, either ma
14、nually manage memory, you can also use ARC to automatically manage memory, ARC is generally accepted that a good memory management tool can automatically resolve the memory leak problem, write pet world on the use of ARC to manage memory. The programming language is Object-c, which is based on an ob
15、ject-oriented language c is a very useful language, Object-c ios application development language is a weapon.The software development process follows a method of software engineering, nearly three weeks after the development process, the basic realization of the desired function, of course, but als
16、o some shortcomings, the software will be a useful software, its existence will be value. Keywords: Pet World Needs Analysis Location Map Weibo ARCTOC o 1-4 h u HYPERLINK l _Toc13432 1 引言 引言宠物世界应用的意义通过宠物世界这款应用可以找到周边的宠友,加入自己喜欢的宠物圈子,分享关于宠物的趣闻及美图,随着人们物质生活的丰富,大家在精神生活方面的追求也在不断提高,宠物成了每个家庭以及个人的朋友,越来越多的人喜欢在
17、家里养养小猫小狗,还会有些奇葩的宠物也会出现在我们的家里,收养宠物也逐渐成为人们关心的话题,而宠物收养以及宠物信息也是必不可少的,我们如何能够做到快速的了解宠物的生活资讯以及了解宠物的生活习性,这关系到我们是否能够很好的收养宠物,狗迷朋友们到处在找有关狗狗的相关消息,那么宠物世界这款应用就可以在很大程度上满足各位狗迷朋友们。首先我们在饲养宠物之前 ,肯定要了解狗狗,狗狗的习性,以及狗狗的品种,还有当我们的宠物生病的时候我们该如何做等等,许多狗迷朋友们为此从网上找解决办法,宠物世界可以让你轻获取周边的宠物服务,美容,衣食医疗等等,发现身边爱宠物的朋友。这就可以为我们的狗迷朋友们提供非常方便的服务
18、,不仅可以帮助狗迷朋友们随时查询关于狗狗的信息,杂志以及各种生活服务,对于爱宠物的朋友们来说,会非常需要宠物世界这款应用。宠物世界这款应用,是基于ios系统的,采用oc语言编写的应用,其中很多ui界面的搭建也是采用了最新版本的xcode搭建的,这就给我们提供了很多方便,所以宠物世界这款应用具有前所未有的方便性,现了许多动画,让用户可以一目了然。这款应用的方便些可想而知,另外,而且现在的宠物迷们对宠物的热爱,所以这款应用具有广泛性。宠物世界还提供了宠物拍照,地址搜索,已知经纬度来计算距离等功能,具有独特性。宠物世界这款应用的开发对于爱宠物的朋友们来说是具有绝对的必要的。据此我们本着尽量满足客户需
19、求的原则开发了宠物世界这款应用。 宠物世界开发的研究现状在国外,综合考虑用户数、应用数、应用下载量、盈利能力等因素,就单是app应用的竞争非常激烈,开发者只有利用过高的开发技术,和新颖的开发视角,才能来满足移动互联网用户个性化,对于新兴的宠物app让很多开发者们产生兴趣,异军突起,上线很短时间内用户量突增,开发者可以从宠物的视角出发去创新,来满足用户的需求。由此引发了宠物行业电商化转型的大讨论,宠物app的出现或许会给宠物行业全面电商化转型带来全新机会。在国内,移动互联网处于快速成长期,移动用户的数量正在增加,在宠物app这方面的应用有很多,说明现在关于宠物的app很流行,也就意味着宠物主人们
20、在广泛的给狗狗寻找专属狗狗的app,宠物app的便捷性让更多的爱宠者把自己的宠物圈交给了智能的移动设备,本应用就是给宠物迷们提供有关爱宠的相关消息的便捷应用,是以从最大程度上满足app用户需求为目的的。研究内容与目标 宠物世界是一款集杂志,资讯,地图定位,分享为一体的综合性生活应用,还可以把图片下载到本地相册。首先它设计的内容主要是和宠物有关的,其中的页面的跳转也是关于宠物的,有潮流时尚,生活资讯,养护训练,精彩自拍,以及微声音,各个页面点进去之后也会有相应的内容,这些内容都是通过网络解析得到的,可以为客户很清晰的显示其想要找到的内容。此款应用就是为宠物迷们专门开发的一款贴心应用,不但可以随时
21、方便的了解到有关狗狗的各种资讯,既可以把自己的爱宠动态分享出去,还可以找到附近爱宠物的同道中人,交流养狗狗的心得,还可以找到离自己最近的宠物,这些功能都是开发的目标,此应用也都是为了尽可能完善这些功能而开发的。而且简单容易操作,通过简单温馨的界面,以及各种动画效果,达到了让宠物世界这款应用更加智能和便捷的效果。理论技术基础理论基础 移动app顾名思义就是手机软件app,也叫移动终端,手机客户终端,移动软件,手机应用软件等,属于移动设备上面运行的一款终端软件。在移动互联网风生水起的时代,移动app已经越来越深入人心,app应用开发市场突飞猛进,成为了移动互联网的主流。宠物世界是基于app的开发理
22、论基础而实现的,首先是基于移动终端上的随身性,互动性通过新技术以及数据分析,实现了精准定位企业目标用户。其次软件开发是一个复杂的过程,软件过程可以通过软件过程模型来表示。概念模式是非常重要的,它是指人们在认识事物的过程中,对于某一事物或者系统形成的抽象的一般化的框架,是在人们长期的实践活动中实现的,概念模式简单明了,易于理解。概念模式具有相对性,面对不同的用途会有不同形式的概念模型,各有各的用处。软件开发中有常见的其中概念模式,结构图,数据流程图,实体关系图等等,这些概念模式都是为了实现软件的易于理解性。技术基础 宠物世界系统的开发使用了计算机领域的常用技术,首先是软件工程理论,包括软件工程过
23、程,软件生存周期,软件周期模型,软件开发的增量模型,软件开发方法等。软件工程规定了获取,供应,开发,操作和维护软件时要实施的过程。软件生存周期是指一个软件从提出开发要求开始直到该软件报废为止的整个周期。把整个生存周期划分为若干阶段,使得每个阶段有明确的任务,是规模大结构复杂和管理复杂的软件开发变的容易控制和管理。软件生存周期模型是描述软件开发过程中各种活动如何执行的模型,软件生存周期模型确立了软件开发和演绎中各阶段的次序限制以及各阶段活动的准则,确立开发过程所遵守的规定和闲置,便于各种活动的协调,便于各种人员的有效通讯,有利于活动重用,有利于活动管理。软件增量模型是在项目的开发过程中以一系列的
24、增量方式开发系统。软件开发方法是一种使用早已定义好的技术及符号表示习惯来组织软件产生的过程,方法一般表述成一系列的步骤,每一步骤都与相应的技术符号相关,软件开发方法是克服软件危机的重要方面之一。面向对象是一种新兴的程序设计方法,是一种程序设计泛型,基本思想是使用对象,类,封装,继承,聚合,关联,消息,多态等基本概念来进行程序设计,面向对象不仅是一些具体软件开发技术与策略,而且是一套关于如何看待软件系统与现实世界的关系的软件方法学。软件开发室对问题的求解过程,按照软件工程学对软件生命周期的划分,软件开发过程包括分析,设计,编程,测试和维护等主要阶段,从认识论的角度看,整个软件开发过程又可归结为两
25、项主要活动,即人们对所要解决的问题及相关事务的认识和基于这种认识所进行的描述。这正是体现了面向对象的思想,object-c语言是一门面向对象编程语言,本系统的开发就是采用了面向对象语言实现了系统的功能。数据库技术是一种对大量数据进行统一集中和独立的管理的工具,数据库不仅包括数据本身,而且包括相关数据之间的联系,是一个逻辑上紧密相连的数据集,拥有确定的用户组和预订应用,顾名思义,数据库是存储和管理数据的仓库,而这个仓库是在计算机存储设备上,而且数据是按一定格式进行组织和存取的。数据库有很多类型,而现在应用最方法的就是关系数据库。网络通信技术是通过计算机和网络通讯设备对图形和文字等形成的资料进行采
26、集,存储,处理和传输等,使信息资源达到充分共享的技术。通信网是一种由通信端点,节点和传输链路相互有机地链接起来,以实现在两个或更多的规定通信端点之间提供链接或非链接传输的通信体系。计算机网络是以相互共享资源方式链接起来,且各自具有独立功能的计算机系统的集合,在网络协议的控制下,由若干台计算机和数据传输设备组成的系统。在现代的广域网结构中,通信子网由交换设备与通信线路组成,它负责完成网路中数据传输与转发任务。交换设备主要是路由器与交换机。计算机网络的主要性能指标是指带宽,吞吐量和时延。未来的计算机网络都是基于IPv6技术的网络,相对于ipv4技术减少了些局限性。软件开发工具的目的是从与开发过程有
27、关的信息管理与信息处理方面,给予软件开发人员帮助与支持。软件开发工具较为复杂,庞大,因此它的功能设计与总体结构必须首先考虑,开发工具的功能具有足够的开放性和灵活性,它的结构为实现这种开放性和灵活性提供了基础信息库存储着与软件开发相关的,尽可能完整的信息,而且需要提供保持一致的切实措施,着需要花费大量的人力,物力才能做到。除了品目上的人机对话之外,文档生成与代码生成时软件开发工具的两种主要输出功能。跨越生命周期的信息管理随着软件开发工具的普遍应用,在这方面的需求越来越多。软件开发工具描述软件状况及其开发过程的慨念模式,提供存储和管理有关信息机制与手段,帮助使用者编制,生成及修改各种文档,帮助使用
28、者编写程序代码,把项目运行与版本更新的有关信息科学地管理起来。系统分析与设计宠物世界系统是一款非常流行的移动app,可以使客户在移动设备上快捷的浏览宠物资讯,掌握宠物信息,搜索宠物位置,是一款方便实用的软件。需求分析引言编写目的 该款软件编写就是为了让更多的用户能够足不出户就能够了解爱宠信息的一 款app,狗迷朋友们可以为自己的爱宠下一款专属狗狗的app。背景 关于宠物app的应用现在很流行,在当今移动互联网飞速发展的时期,这款软件能够给狗迷朋友们带来方便,所以在app行业中属于一款热门的软件,宠物世界中可以实现新浪微博分享,腾讯微博分享,与常用软件相关联,增强了本款软件的可实用性参考资料 表
29、1 参考资料1编号9787515402789资料名称苹果ios6开发从入门到实战简介随着苹果iPhone、iPad等移动终端的持续热销,苹果AppStore上面的应用程序下载已超过400亿次,这些应用程序的开发,所使用的正是苹果iOS平台。iOS平台是苹果智能设备使用的操作系统,其界面美观、简洁,稳定性高,与硬件配合度极高。“苹果iOS6开发从入门到实战”是一本详细介绍苹果iOS6最新平台软件开发应用的书籍。作者睿峰科技日期2013-6-1出版单位当代中国出版社 表2 参考资料2编号9787111308744资料名称Objective-C2.0编程快速上手简介本书是介绍Objective-C编
30、程的基础教程。全书采用实例讲解、按部就班的方式,全面详细地介绍了Objective-C面向对象编程的基础知识和基本技能。主要内容包括:Objective-C的基础知识、流程控制,数据操作,函数,类和对象,继承,分类、扮演和协议,数组和字典等,以及内存管理和异常处理等相对高级的话题。全书内容精练、讲解生动,非常适合初学者快速上手。作者(美)霍尔茨纳|译者:刘红伟/孟庆麟日期2010-07-05出版单位机械工业 表3 参考资料3编号9787115318091资料名称Objective-C高级编程:iOS与OS X多线程和内存管理(苹果源代码不会告诉你的Objective-C高级编程) 简介苹果源代
31、码不会告诉你的Objective-C高级编程在苹果公司公开的源代码基础上,深入剖析了: iOS 5、OS X Lion 引入的新的内存管理技术ARC iOS 4、OS X Snow Leopard 引入的多线程应用技术Blocks 和GCD这些新技术在App应用开发时不可或缺。它们看似简单,但若无深入了解,就会变成技术开发的陷阱。在苹果公司公开的源代码基础上加以解说,深入剖析,这些内容是仅靠阅读苹果公司的参考文档而难以企及的。作者黎华日期2013-6-1出版单位人民邮电出版社 术语 需求分析:指理解用户要求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。
32、问题识别:就是从系统角度来理解软件,确定对所开发系统的综合要求。功能需求:做什么。性能需求:要到达到的目标。环境需求:机型,操作系统。可靠性需求:不发生故障的概率。资源使用需求:所需内存cpu。任务概述目标本软件是一项独立的软件,全部内容自含。开发的意图主要是为了客户能够用到一款便捷的移动app,为我们的生活带来更多的方便。该软件的试用圈主要是爱宠物的人们,甚至是家庭,本软件的开发就是在宠物与我们的家庭关系越来越密切的环境中孕育而生的,所以有其生存下去的意义和价值。系统的特点该软件便捷,可移动性强的特点尤为凸显,采用oc语言编程,利用了多个第三方库来实现软件的许多功能,对系统库的应用也很熟练,
33、所以该系统的预期使用品读应该很高。与市场同类软件比较,该软件实现了地图定位,还有宠物自拍的功能。假定和约束本软件的开发期限预计为两周,其中的接口实现需要用到网络下载。需求规定软件功能界面格式统一,要求性能高,精度,时间特性,灵活,数据管理规模相对大,可维护性强,亦可补充,易读,可靠。运行环境规定该软件需要在iphone客户端上运行,ios操作系统,该产品的运行需要这些条件。尚需解决的问题该软件在需求分析阶段必须但尚未解决的问题是实现微声音的页面,加入录音功能,和语音播放功能。总体设计系统要实现的功能本系统的功能为实现宠物杂志的浏览,图片的显示,地址的定位,和图片以及声音的分享.该软件的结构Sh
34、opViewControllerGlobLabViewControllerTinySoundViewControllerDetailRootViewControllerFashionViewControllerEditingViewControllerLifeInfomationViewControllerShopViewControllerGlobLabViewControllerTinySoundViewControllerDetailRootViewControllerFashionViewControllerEditingViewControllerLifeInfomationView
35、ControllerShopViewControllerFeedAndTrianViewControllerUITabBarController SelfViewControllerNavagationController1NavagationController5NavagationController4NavagationController3NavagationController2RootViewController图 图 图 图 各模块的功能:第一个模块是潮流时尚模块,潮流时尚模块中又包含四个子模块,分别是本月强档,编辑热推,潮流购物,狗型狗秀.(1)本月强档中实现了一个接口,下载下
36、来的有图片以及简介,包括宠物零食,宠物活动等等,该页面是一个tableView,每一个item点进去之后是一个webView,也就是该cell上内容的详细介绍.(2)编辑热推同样实现了接口,这个页面显示的都是宠物的食物,每个cell上有左边的图片,还有题目以及简介,每个cell选中之后会跳到该狗粮的详细介绍页面,包括狗粮的营养分析等等.下面是个 toolBar 包括了三个按钮,可以点赞,可以转发,也可以品论(这些功能尚未实现).(3)潮流购物模块,用了瀑布了显示图片,这些图片都是宠物用品,每张图片可以点进去,实现相应的操作.(4)狗型狗秀模块同样是显示图片的页面,这个页面主题是狗狗,用瀑布流显
37、示的是狗狗的萌照,还富有了对照片的描述,每张照片同样可以点进去查阅. 图 第二个大模块是生活资讯模块,该模块同样有四个子模块,分别为店铺导购,美味关系,玩转地球,实验室.(1)店铺导购页面是宠物店的地址,图片,以及评分和路线,选中可以详细了解每家店子的具体介绍,包括店家服务,店家评分,店家联系方式,地址,以及路线查询等等.还可以点赞和品论.该模块还实现了一个功能就是选择地区,还有地图的自动定位功能(尚未完善).(2)美味关系模块实现了图片的多列显示,包裹食物营养的搭配,可以查看图片.(3)玩转地球模块实现的是可以看到世界各地的宠物查看,点进去是个webView,显示了当地的风景,人情,以及当地
38、的宠物们.(4)实验室模块实现了宠物用品的分类,和详情介绍,也可以实现转载,品论,点赞功能.图 图 第三大模块是养护训练模块,该模块包含了五个子模块,分别为主流狗,真狗秀,训犬宝典,健康手册,和研究室模块.(1)首先是主流狗模块,列出了几种流行品种的狗狗,附有图片和详细介绍(2)真狗秀模块,是一些实拍的狗狗图片和介绍在每一个cell上显示.(3)训犬宝典模块是比较出色的训狗技巧,有图片和详细介绍.(4)健康手册模块抓哟介绍的是给狗狗治病的页面,实现关于如何养护宠物的功能.(5)研究室模块是一个显示每种狗的品种以及图片还有详细介绍的页面,以上五个子模块共同构成了养护训练模块. 图 第四个模块是精
39、彩自拍模块:精彩自拍模块整体显示的是一个tableView,在左边还有一个时间轴,时间轴上有一个时间点,每个cell上有标题还有图片,下面的骨头是个button可以点击,每次点击骨头数量会增加,第二个button是分享按钮,点击可以弹出人人网,腾讯微博,还有新浪微博三个应用软件,点一个可以跳转到对应软件的的登录界面,就可以注册登录实现分享功能了.中间的图片添加了手势,点击图片可以放大查看.左上角的拍照按钮点击可以跳转到添加图片页面,点击添加图片,从底部可以弹出一个复选框 ,如果选择从相册上传就会进入本地相册,点击存储的照片之后进入相册列表,点中一张图片可以显示出来,图片放到一个view上面可以
40、左右移动来查看图片,然后点中选取按钮,图片就显示到了添加图片的框图里面,右下角有一个button,是发表按钮,点击可以发出去(此功能尚未实现).图 图 图 第五大模块是微声音模块:该模块包括四个子模块,分别是官方微博,活动报告,达人志,和专栏模块,每个模块都是一个tableView,并且继承与DetailRootViewController,这几个模块主要实现的是解析jason文档下载数据,并把图片和内容显示出来.官方微博主要是狗迷朋友们在周边的发声,通过这个模块可以看到周边朋友们的想法.活动报道模块主要是实现一些狗狗们的活动和介绍.达人志模块里面,可以浏览到一些有特点狗狗的照片和内容.专栏模
41、块同达人智类似,是对一些狗狗的专题报告. 图 整个系统界面的右上角都有设置按钮,点击改按钮会进入到设置界面,设置界面整体放的是一个tableView,每个cell上面有相应的设置内容,其中实现了一个清除缓存的,实现的还不完善.点击缓存的按钮,会弹出一个警告框,显示这当前的缓存大小,如果点击确定,缓存会变为0.图 模块图如下: 图 宠物世界设置图 宠物世界设置潮流时尚生活资讯养护训练精彩自拍微声音本月强档编辑热推潮流购物实验室玩转地球美味关系店铺导购真狗秀训犬宝典主流狗健康手册研究室拍 照分 享下 载评 论官方微博活动报道达人志专 栏宠物世界 狗型狗秀该系统主要是实现接口,存储下载下来的内容,首
42、先是json文件解析,解析到的内容,采用mvc模式实现了存储,每一个model中都有数据的存储类型,这些数据的结构要根据解析出来的data的类型而存放.详细设计潮流时尚Select cell潮流时尚Select cellShow WebViewShow WebViewShow WebView点击编辑热推Select cellShow WebViewShow WebViewShow WebView点击潮流购物点击狗型狗秀潮流时尚模块: 生活资讯 生活资讯 选择地区Select cell 详情界面点击线路查询美味关系 百度地图玩转地球Select cellShow webView 实验室Selec
43、t cell生活资讯模块: 养护训练 Select cellSelect cellShow Webview 真狗秀 养护训练 Select cellSelect cellShow Webview 真狗秀训犬宝典健康手册研究室精彩自拍模块: 精彩自拍 精彩自拍点击拍照 点击分享 新浪分享 添加照片从相册选择照片微声音 选择按钮 活动报告 达人志微声音 选择按钮 活动报告 达人志 专 栏 系统实现该系统实现的最低层的界面是一个自定义的TabBarController,包含最基本的五个导航控制器,每一个导航控制器又包含了它们管理的视图控制器。每个试图控制器的编写都采用的事Object-c的编程语言还
44、有采用了ARC的自动内存管理。 本系统的一共建了五个组,其中Libray中放的都是第三方库.Download&Parse组中封装的是下载解析类,本系统中所有的下载都在这个类中实现.Model组中放的都是模型类.View中有两个组,MainView,DatailView两个存中放得都是视图类.Controller是存放视图控制器的类,其中SuperViewControllers中的是基类,也就是其他自类的父类,包括CustomTableBarController,RootViewController,DetailRootViewController三个基本类.剩下五个组分别存放的是五个主界面的视
45、图控制器,它们都是继承与基类的.在该软件的代码结构中,下载类是的代码是很重要的,下面是下载类的部分中心代码。/得到当前的网址转化为字符串-(NSString *)getCurrentUrlString:(ASIHTTPRequest *)request NSURL * theUrl=request url; NSString * str=NSString stringWithFormat:%,theUrl; return str; -(NSString *)getPicUrlWithSeverString:(NSString *)serverStr andPicStr:(NSString *)
46、picUrlStr NSString * picUrl=NSString stringWithFormat:%,serverStr,picUrlStr; return picUrl; -(void)requestFinished:(ASIHTTPRequest *)request NSLog(下载成功); switch (request.tag) case FashionMonthType: self parsingFashionMonthAndEditing:request; break; case FashionEditingType: self parsingFashionMonthAn
47、dEditing:request; break; case FashionShoppingType: self parsingFashionShoppingAndStyle:request; break; case FashionDogStyleType: self parsingFashionShoppingAndStyle:request; break; case LifeInfoShoppingGuideType: self parsingLifeInfoShop:request; break; case LifeInfoSweetRelationshipType: self parsi
48、ngLifeInfoSweetRelationship:request; break; case LifeInfoGlobeTrekerType: self parsingLifeInfoGlobeAndLaboratory:request; break; case LifeInfoLaboratoryType: self parsingLifeInfoGlobeAndLaboratory:request; break; case FeedTrainMainStreamDogType: self parsingFeedTrain:request; break; case FeedTrainTr
49、ueDogShowType: self parsingFeedTrain:request; break; case FeedTrainDogTrainingType: self parsingFeedTrain:request; break; case FeedTrainHealthBookType: self parsingFeedTrain:request; break; case FeedTrainLabType: self parsingFeedTrain:request; break; case TinySoundBolgType: self parsingTinySoundBlog
50、:request; break; case TinySoundReportsType: self parsingTinySoundReports:request; break; case TinySoundTalentType: self parsingTinySoundReports:request; break; case TinySoundColumnType: self parsingTinySoundReports:request; break; case SelfieType: self parsingSelfie:request; break; case Sweet: self
51、parsingPicture:request; break; case MainDogStyle: self parsingMainDogDetail:request; break; case ShopGuidType: self parsingShopDetail:request; break; default: break; /解析方法#pragma mark-ParsingFashion-(void)parsingFashionMonthAndEditing:(ASIHTTPRequest *)request NSDictionary *rootDic=NSJSONSerializati
52、on JSONObjectWithData:request.responseData options:0 error:nil; NSArray * array=rootDic objectForKey:list; NSMutableArray * resultArray=NSMutableArray allocinit; for (NSDictionary * dict in array) FashionFirstDataModel * model=FashionFirstDataModel allocinit ; NSString * str; if (request.tag=Fashion
53、MonthType) str=kInterFaceSever1; else str=kInterFaceSever2; model.picUrl=self getPicUrlWithSeverString:str andPicStr:dict objectForKey:icon; model.title=dict objectForKey:title; model.conent=dict objectForKey:des; model.ID=dict objectForKey:id; resultArray addObject:model; _resultDic setObject:resul
54、tArray forKey:self getCurrentUrlString:request; _hud hide:YES; 实现系统过程中遇到的问题有,首先是整个工程的基本框架搭建,一开始因为没弄清楚基本的系统结构,走了很多弯路.其次,第三方库的寻找,有些库可以直接找到,有的是从别的工程中自己导入的.在开始的基本界面中,最下面的tabBar中的滑块的实现遇到了问题,后来用一个view每次点击的时候都计算view的位置,解决了这个问题.因为这个系统中用了通知中心,一开始不会用,后来通过查资料,问同学通知中心弄明白了.百度地图的应用也出现了问题,然后自己查看了一下之前写过的程序,基本会用了百度地
55、图.最大的问题就是代码调试问题,但是每次调试出来还是很有成就感的。总结 系统的主要优点就是主界面简单明了易于操作,给人一目了然的效果,基本实现了预期的功能,但是也有不去之处,就是地图的自动定位功能还没有实现,使该系统有所欠缺.如果继续研究的话,就是实现地图的自动定位功能,还有就是可以加入语音功能, 可以让狗迷朋友们可以互动,使本系统更加完善. 经过了一个多月的学习和工作,我终于完成了宠物世界的论文。感谢我的指导老师杨学全老师,对我的内心指导。从开始接到论文题目到系统的实现,再到论文文章的完成,每走一步对我来说都是新的尝试与挑战,这也是我在大学期间完成的最大的项目。在这段时间里,我学到了很多知识
56、也有很多感受,从对ios一无所知,对Object-c,UI,网络等相关技术很不了解的状态,我开始了独立的学习和试验,查看相关的资料和书籍,让自己头脑中模糊的概念逐渐清晰,使自己非常稚嫩作品一步步完善起来,每一次改进都是我学习的收获,每一次试验的成功都会让我兴奋好一段时间。从中我也充分认识到了宠物app这一新兴的应用给我们生活带来的乐趣,在属于自己的网络空间上,表达自己对养宠物的感受,并且把自己的想法与他人分享,我也有了一个属于自己的宠物app。虽然我的论文作品不是很成熟,还有很多不足之处,但我可以自豪的说,这里面的每一段代码,都有我的劳动。当看着自己的程序,自己成天相伴的系统能够健康的运行,真
57、是莫大的幸福和欣慰。我相信其中的酸甜苦辣最终都会化为甜美的甘泉。这次做论文的经历也会使我终身受益,我感受到做论文是要真真正正用心去做的一件事情,是真正的自己学习的过程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破,那也就不叫论文了。希望这次的经历能让我在以后学习中激励我继续进步.附录其他关键代码:分享,百度地图appkey 根视图 UMSocialData setAppKey:52ad5b5f56240b44220adf33; BMKMapManager * mapManager=BMKMapManager allocinit; mapManager start:8hxZN0g72SWvst0FSggeH0PS generalDelegate:self; CustomTableBarController * myCustom=CustomTableBarController allocinit; self.window.rootViewController=myCu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024版船舶贷款融资合同
- 二零二四年BIM模型在建筑可视化领域的应用合同
- 2024年度销售代理合同including销售区域与业绩指标
- 二零二四年度平房转让合同
- 二零二四年度广告发布合同标的及投放要求
- 二零二四年度影视制作项目合作合同
- 2024年度广告投放合同中广告效果评估与费用结算
- 钢厂贸易合同范本
- 2024年度高新技术产品研发与销售合同
- 2024版液化天然气购销合同模板
- 因材施教-分层教学,优化培智教育教学
- 医疗器械售后服务记录表
- 麻油糖酥饼制作
- 2023年重庆中考英语短文填空真题含答案
- 机械专业大学生的职业生涯规划
- 2023年珠海城市职业技术学院单招面试模拟试题及答案解析
- 湖北省水文情报预报知识竞赛(完整版)
- (完整)全国事业单位招聘考试题题库及答案(通用版)
- 2023年英语专业四级单选及答案详解
- 三年级上册数学课件-8.1 分数的初步认识 ︳西师大版
- YY/T 0935-2014CT造影注射装置专用技术条件
评论
0/150
提交评论