杜天乐-计算机科学与技术-基于iOS的移动商城客户端开发_第1页
杜天乐-计算机科学与技术-基于iOS的移动商城客户端开发_第2页
杜天乐-计算机科学与技术-基于iOS的移动商城客户端开发_第3页
杜天乐-计算机科学与技术-基于iOS的移动商城客户端开发_第4页
杜天乐-计算机科学与技术-基于iOS的移动商城客户端开发_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、Liaoning Normal University(2016届)本科生毕业论文(设计)题 目:基于iOS的移动商城客户端开发学 院: 计算机与信息技术学院专 业: 计算机科学与技术班级序号: 3班9号学 号: 201221012701学生姓名: 杜天乐指导教师: 郑晓薇 2016年5月目 录摘要 1前言 21 绪论 3 1.1课题研究背景及意义 31.2课题目标 32 iOS开发环境及技术 4 2.1关于Mac OS X系统 4 2.2 Xcode的发展及特点 4 2.3关于iOS系统 4 2.4 Objective-c语言 4 2.5关于创建iOS应用程序 53 移动商城客户端系统分析及功

2、能设计 .7 3.1移动商城客户端系统可行性分析 7 3.1.1 什么是可行性分析 7 3.1.2技术可行分析 8 3.1.2技术可行分析 8 3.2移动商城客户端系统需求分析 9 3.2.1总体需求分析 9 3.2.2功能模块需求分析 9 3.3移动商城客户端系统设计 9 3.3.1系统总体设计 9 3.3.2各功能模块系统设计 104 移动商城客户端系统的实现 12 4.1实验环境搭建 12 4.2系统软件代码结构 12 4.3用户管理功能实现 13 4.4购物车功能模块的实现 14 4.5订单管理的实现 14 4.6商品信息展示功能模块的实现 15 4.7支付功能的实现 15 4.8其他

3、 165移动商城客户端系统功能测试16 5.1关于功能测试16 5.2整体功能测试16 5.3注册登录功能测试16 5.4详细商品信息查看功能测试17 5.5索引功能测试18 5.6购物车功能测试18 5.7订单功能测试19 结论 19参考文献 20致谢 21ii基于iOS的移动商城客户端开发基于iOS的移动商城客户端开发摘要: iOS系统是现在在智能移动平台上被广泛运用的移动端操作系统之一。iOS系统具有很多的优点,流畅稳定,低功耗,安全。来自苹果公司官方的调查显示iOS系统是目前全球用户量第二的移动操作系统,而且其用户量每年还在不断增长。而基于iOS系统的移动商城客户端,也凭借iOS系统良

4、好的特性,及其自身相对于传统PC端更加方便灵活的魅力吸引到大量用户的使用。 本次课题研究移动商城客户端的开发。课题选取汽车用品类商品作为商品模板,利用MVC模式设计,完成课题项目功能模块的划分和框架的搭建。实现用户的注册和登陆,商品的分类显示及搜索,消息的推送,完成页面的跳转及社会化分享的实现。在项目的开发过程中能够熟练运用Xcode,掌握UI设计方法以及UIKit框架中各种类的的使用,了解各个控件的相互约束关系,理解数据的请求和解析方式,熟悉关联数据库的操作。关键词: iOS 移动商城 MVC模式设计 UI设计 UIKit框架 数据请求 数据解析 数据库Abstract: Nowadays

5、iOS system is one of the widely used mobile operating system in intelligent mobile platform. The iOS system has many advantages, such as flow stability, low power consumption and safe. A surveys from apple official shows that iOS system is the second of the world's current users of mobile operat

6、ing system, and its users is growing every year. And the mobile market client based on iOS system, also with a good features of iOS system and its own charm to attract a large number of users to use it. This topic research the development of mobile market client. Select auto supplies goods as commod

7、ity template, using the MVC pattern design, functional modules of completed projects and the construction of the framework. To achieve that user registration and login the system, the classification of goods display and search, message delivery, complete jump of the page. And the realization of soci

8、al sharing. In the process of the development of the project can skillfully use Xcode, and grasp the concept of UI design method, mutual constraint relationship, understand the various controls to understand the request of the data and analytic approach, familiar with the operation of the database.K

9、eyWorld: iOS mobile market client MVC UI UIKit data demand data analysis database前言 自从互联网诞生,移动互联网技术日新月异,无论是硬件还是软件的内容都越来越丰富。 当今移动互联网与我们的生活息息相关,尤其是智能移动平台的出现和发展,更是将我们与移动紧密的联系起来。我们可以通过移动互联网查看新闻资讯,休闲娱乐,以及购物。网上购物一出现就成为一种时尚并以其丰富的内容,方便快捷的特点被越来越多的人所喜爱和接受。时下电子商务发展的生态已经成熟,淘宝,京东,天猫等各种商城早已被大众所熟知。有别于传统的网上商城,移动平台的

10、网络商城客户端具有移动互联网的各种优点。随时随地只要移动平台上有商城客户端就能进行购物。丰富的商品,专业的分类,轻松舒适的体验,这是移动商城给我们生活带来的改变。本课题实践的是基于iOS的移动商城客户端的开发,期望实现用户和商城之间的交互。用户能够实现注册登陆,商品信息的浏览查询,商品购物车的管理以及订单的管理。同时商城希望客户端能够及时响应客户的各种请求。本文研究研究基于iOS系统的移动商城客户端的实现,选取汽车用品作为商品,全面的分析了该客户端系统的可行性和功能需求。通过老师的指导和自己收集资料,产考web端网上商城功能以及美车美品iOS客户端的UI设计,利用MVC模式设计搭建了系统的整体

11、框架,完成了各个功能模块的设计。熟悉了UIKit框架之后,利用其包含的构建iPhone应用程序画面的各种控件,以及与iPhone特色的画面布局控制,跳转控制相关的类来实现和丰富个功能模块。实验通过需求分析划分功能模块然后进行系统功能设计,利用Xcode开发工具,经过老师和同学的帮助,以及自己这一段时间的实验,成功的完成这款基于iOS系统的移动商场客户端的开发实现。这款客户端系统能满足用户从浏览商品到购买到商品这一过程中的所有动作,基本上达到了实验的预期效果。1 绪论1.1课题研究背景及意义 随着移动互联网络技术的发展及智能移动平台的研发,移动互联网已经通过智能移动平台融入于我们生活的方方面面。

12、互联网思维被越来越多的行业所接受和利用,互联网技术的繁荣和发展也给传统行业注入了新的活力,甚至引发了天翻地覆的变化。同样的相较于传统的商业模式,电子商务的出现也引发了商业模式的大变革大发展。电子商务依托于网络,正潜移默化的影响我们的生活尤其是我们的购物习惯。而随着移动互联网的发展,移动电子商务的商业模式将拥有着更多的用户基础,和更加稳定的市场前景。但是对移动互联网用户而言,最直观的感触莫过于与应用软件之间的交互。所以一款应用软件的用户体验将对其用户量有着至关重要的影响。 如今智能移动硬件产品也是日益丰富,而基于iOS系统的苹果产品更是其中的主流之一。相应的作为软件支撑的iOS技术也成为移动应用

13、开发的一大热门技术。作为iOS应用开发的基础语言Objective-C向下兼容C语言,是一门很实用的开发语言。最重要的是Objective-C在swift语言出现前,是唯一用于iphone及iPad等硬件的应用软件开发的语言。考虑到iOS庞大的用户量,仍然坚挺的发展前景,以及对大众用户而言良好的用户体验,才有了这次基于iOS系统移动应用开发的研究课题。 现如今移动电子商务的主流很少直接依托于传统的web网页,各大网站纷纷研发了属于自己的客户端。这样不仅能够留住更多的用户,还能提供稳定的IP流量。时下通过手机客户端来购物已经成为一种新时尚。iOS系统的软件所特有的美观、简洁、易操作的特点,更是引

14、领着这种时尚。据此,一款设计精巧的基于iOS系统的移动商城客户端将会更容易得到用户的青睐。1.2课题目标及论文结构 选择汽车用品为商品,开发出一款专属的移动商城客户端。实现用户的注册和登陆,确保用户信息的安全。客户端能做到商品的分类显示和搜索,以及各类消息的推送。完成页面间的跳转,即时通讯及社会化分享的实现。 对于我个人而言,接触iOS源于自己用的手机,学习iOS开发则是为了掌握实用的开发术。所以对于这次毕业设计,我选择了基于iOS系统开发一个项目。从而可以通过这次毕业设计来进一步巩固自己的iOS开发水平,加深对项目开发过程的理解。 论文共分为六个部分:1.绪论。主要介绍了本课题的研究背景,研

15、究意义,以及课题达到的目标和论文的组织结构。2.iOS开发环境及技术。简要的介绍了Mac OS X系统,Xcode的发展及特点,Xcode的版本及支持信息。同时还介绍了一些关于iOS系统的内容,Objective-c语言以及创建iOS应用程序和程序的调试方法。3.移动商城客户端系统需求分析及系统功能设计,主要介绍本系统的可行性分析,需求分析,功能模块的划分,各功能模块的功能式样书,以及模块化的系统功能设计。4.移动商城客户端系统实现,以第二章介绍的环境和技术为基础,详细的介绍系统各功能的实现和各功能模块之间的整合。 5.移动商城客户端功能测试。主要介绍程序的调试结果。 6.论文的最后是对本次课

16、题研究的总结和展望以及参考文献。2 iOS开发环境及技术2.1 关于Mac OS X系统 OS X是苹果公司为Mac系列产品开发的专属操作系统。OS X预装于苹果Mac系列产品中,系统整体简洁大方,系统稳定安全使用方便。Mac OS X是一个很好的开发平台,是目前基于UNIX的装机量最大的操作系统,Mac OS X提供了独特的技术原理和简单操作的完美结合,同时基于开放源代码的Mac OS X,提供了加强的性能、兼容性和可用性。 本次课题项目开发使用版本:OS X Yosemite 10.10.5 Mac mini。 搭载处理器:1.4GHz Inter Core i5。2.2 关于Xcode集

17、成环境 Xcode是由苹果公司开发,运行于Mac OS X操作系统上的集成开发工具,是开发OS X 和iOS应用程序的最便捷的集成开发工具。Xcode 具有统一的用户界面设计,编码、测试、调试都在一个简单的窗口内完成。 Xcode是苹果公司向开发人员提供的集成开发环境,是非开源的。它负责处理从最开始到工程的最终部署这一过程中的大多数环节。我们可以通过这个工具来完成很多工作: 创建和管理工程,包括指定目标的需求、依赖性、和连编的风格。 在具有语法染色、自动缩进等功能的编辑器上编写源代码。 在工程的不同组件中进行漫游和检索,包括头文件和文档。 连编工程。 在图形化的源代码级调试器上调试工程。 Xc

18、ode可以连编由C、C+、Objective-C、Objective-C+、和Java编写的源代码组成的工程,可以生成Mac OS X支持的所有类型的执行代码,包括命令行工具、框架、插件、内核扩展、程序包、和应用程序。Xcode允许我们对连编和调试工具、可执行文件的打包方式包括信息属性列表和本地化程序包、连编过程包括拷贝文件、脚本文件处理、和其它连编阶段、以及用户界面包括分立和多视图的代码编辑器进行几乎无限的定制,还支持几个源代码管理系统,我们可以将文件追加到代码库、提交修改、获取更新版本、以及进行版本的比较。 本次实验使用Xcode版本信息:Xcode Version7.1(7B91b)。2

19、.3 关于iOS系统 苹果iOS是由苹果公司开发的移动操作系统。苹果公司最早于2007年1月9日Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等产品上。iOS与苹果的Mac OS X操作系统一样,属于类Unix的商业操作系统。 iOS 具有简单易用的界面、以及超强的稳定性,同时iOS 平台拥有数量庞大的移动应用。因此毫无疑问,iOS是一个优秀的移动应用平台,该平台优良的特性以及庞大的用户量非常适合搭载移动商城客户端系统。2.4 Objective-c语言 Brad.J.Cox在20世纪80年代早期设计了Obj

20、ective-C语言,它是以一种叫做SmallTalk-80的语言为基础的。Objective-C在C语言的基础上加了一个层次,这意味着对C进行了扩展,从而发展成为一门新的程序设计语言,支持对象的创建和操作。 2007年,苹果公司发布了Objective-C语言的升级版,并称为Objective-C 2.0。随后随着各种移动硬件的推出,苹果公司开始统一操作系统上使用的术语,和SDK,以支持使用不同尺寸的物理物理屏幕和屏幕分辨率的各种设备。2.5关于创建iOS应用程序1. 打开Xcode并选择Create a new Xcode project。如图2-1所示: 图2-1 创建工程2. 进入如图

21、2-2界面,首先选择,ios目录下的application,然后选择右边方框中的Single View Application, 然点next。 图2-2 single View3. 跳到图2-3界面,第一个Prouct Name:工程的名字,第二个Organization Name:组织或者公司的名字,第三个Language:语言,根据需要选择objective-c或者Swift。这儿我选Objective-c语言,然后点next。 图2-3工程名4. 进入到如下图2-4界面,在这个界面选择把工程保存在哪个文件夹下,完成之后,点create。 图2-4 路径 5.跳到如图2-5界面,就成功创

22、建了一个工程。 图2-5创建成功 6.编辑界面如图2-6所示。选择目标文件即可开始编辑。 图2-6编辑3 移动商城客户端系统分析及功能设计3.1移动商城客户端系统可行性分析3.1.1 什么是可行性分析可行性分析是通过对项目的主要内容和配套条件,从技术、经济等方面进行调查研究和分析比较,并对项目建成以后可能取得经济效益及社会环境影响进行预测,从而提出该项目是否值得进行等建议,为项目决策提供依据的一种综合性的系统分析方法。可行性分析应具有预见性、公正性、可靠性、科学性的特点。3.1.2技术可行分析技术可行性主要是从项目实施的技术角度,分析项目中可能存在的技术问题和风险,选择合理技术设计方案及解决方

23、案,并进行比较选择和评价。对于本次课题研究的基于iOS的移动商城客户端,相关技术已经成熟,与之匹配的第三方软件也很丰富。作为技术支持,OS X平台下集成的开发环境Xcode能够完成项目的编辑,编译,及调试。Objective-C语言能够胜任各个功能模块的编写,同时基于iOS的UI,数据请求和解析等拥有一整套成熟的技术。但对于大规模数据库操作,数据安全,数据索引,于我个人而言还是有很大的挑战.但这也正是这次实验对我的促进之所在。3.1.3社会可行性分析所谓社会可行性也即是分析项目对社会的影响。从政治体制、方针政策、经济结构、法律道德、宗教民族、妇女儿童及社会稳定性等方面论证项目的发展给社会带来的

24、影响。从而为项目的决策提供意见。基于iOS平台的移动商城客户端系统,无疑是顺应时代发展的产品,有利于商业模式的多样化,促进市场的繁荣。移动商城客户端方便用户日常购物,方便快捷,丰富了日常生活。移动商城客户端是电子商务不可或缺的组成部分。3.2移动商城客户端系统需求分析需求分析指的是在建立一个新的应用的时,就这个新的应用的目的、范围、定义及功能这些方面所要做的工作。需求分析是完成一个应用必不可少的部分。在进行一款项目开发的过程中,开发者必须确定客户的需求,在确定了客户需求后才能进行应用的开发。3.2.1总体需求分析 移动商城客户端系统是客户端和用户通过网络与商城进行交互的窗口。用户通过客户端注册

25、个人信息,登陆网上商城,浏览商品信息,通过关键字检索商品,联系客服,收藏商品,订单管理,下单付款。另一方面,商城通过客户端可以向用户推送消息,提示信息,应答客户请求。 移动商城客户端对用户没有太高的要求,拥有移动互联网平台的人都可以通过移动互联网平台下载移动商城客户端,并通过客户端注册成为互联网商城会员,完成商品信息的检索和浏览,下单购物,完成交易的过程。同样用户也可以以游客的身份进行商品信息的检索和浏览,游客想要完成交易则需要注册个人信息,成为注册会员。根据对移动商城客户端的功能分析,可以大致的将其划分为:用户管理,订单管理,购物车管理,信息检索,支付系统和商品信息系统。除此之外,系统可以加

26、入社会化分享等个性化的功能模块。 3.2.2功能模块需求分析 由以上,总体的功能需求分析可知,移动商城客户端整体基本上分为六大模块。从客户端和用户人机交互的需求出发,划分功能模块有效的提高了模块的聚合度降低了各功能模块之间的耦合度。 1. 用户管理系统 用户管理系统需要满足用户对自己的个人信息进行管理的需求,能够完成包括用户注册,用户登录,用户修改个人信息和退出登陆四个子功能。2.商品信息及消息推送 商品信息模块应该满足用户了解商品的需求。包括商品展示,商品详细信息查看,活动消息推送。联系客服以及添加商品到购物车,立即购买的按钮选项应答关联到购物车管理系统和订单管理系统。3. 信息检索 信息检

27、索即能够让用户通过关键字搜索相关商品的功能模块,主要功能就是索引相关商品并反应给用户,因此这个功能模块需要同商品信息系统相关联。4. 购物车管理系统 购物车管理系统的主要功能应该满足用户收藏自己喜欢的商品,完成用户对购物车内商品的增删处理,购物车内商品陈列,查看商品具体信息。显然该模块部分功需求与商品信息及消息推送功能模块有一些相同的功能需求。5. 订单管理系统 订单管理系统是注册用户管理用来管理账号订单的系统,应满足其查看订单详细内容及商品信息跳转到商品信息系统,删除订单的需求。该模块同样也和商品信息及消息推送模块有相同显示查看商品信息的功能需求。6. 支付系统 支付系统负责完成用户网上购物

28、的最后一步,完成订单提交过来的支付任务或者取消支付反馈支付结果给用户,同时支付系统还负责支付方式的选择的功能。3.3移动商城客户端系统设计3.3.1 系统总体设计 移动商城客户端是用户和商家线上交互的平台,通过系统需求分析我们将系统功能划分为了六大模块。利用MVC框架及常用的设计模式,对程序设计进行分工和给具体问题提出解决方案以实现代码的重用和和设计的重用。 对于移动商城客户端,系统的整体设计在考虑程序编写要求的同时更要参考用户的操作习惯,购物流程,将用户需求和用户体验内化到系统设计之中。根据系统分析结果可以将本系统分为两个部分:面向用户的信息显示,面向用户请求的应答处理。 图3-1整体结构图

29、系统整体结构图如图3-1所示。3.3.2系统各功能模块设计 系统整体功能的实现依赖于各个子功能模块各功能的完善和模块间的相互配合。通过对移动商城系统的全面分析并结合调研的情况,设计各个子功能模块。同时考虑到用户的个人体验,除了常用的六大模块外还设计引导模块指导新用户该款客户端,吸引用户注册个人账号,满足用户社会化分享的功能模块。1. 用户管理系统该子功能模块是用户对自己的个人信息进行管理的模块,协调用户注册,用户登录,用户管理个人信息和退出登陆等功能。很显然这些功能异步实现,优先级依次递减的。在完成模块的基本功能的同时还满足应答其他模块的跳转要求,以及跳转到其他功能模块的请求按钮。功能划分如图

30、3-2所示。 图3-2用户管理2. 商品信息及消息推送商品信息及消息推送模块的各子功能:显示商品,查看商品详细信息,推送商品。联系客服相互配合。额外的,添加商品到购物车,立即购买的按钮请求选项是必不可少的,应答来自信息检索的要求是提升用户体验重要环节。系统功能如图3-3所示。 图3-3商品显示3. 信息检索 信息检索即通过关键字搜索相关商品,主要功能就是索引相关商品并反应给用户,因此这个功能模块需要同商品信息系统相关联。这是功能要求简单的模块,只需要满足用户搜索信息的需求。4. 购物车管理系统购物车管理系统主要用于收藏注册用户喜欢的商品,主要功能包括购物车内商品的删,商品的显示,查看商品具体信

31、息,结算生成订单关联到订单系统以及推出购物车系统的请求按钮,同时还应能响应其他模块的请求。由需求分析已经知道该部分与商品信息部分有功能重合,故而,部分设计和代码能够重用。功能划分如图3-4所示。 图3-4购物车5. 订单管理系统 订单管理系统是注册用户管理订单的功能模块,可以查看订单详细内容及商品信息,删除订单,提交订单。很显然其功能需求与商品信息系统和支付系统都有关联。系统划分如图3-4所示。 图3-4订单管理6.支付系统支付系统的设计本着安全的原则,以完成订单提交过来的支付请求或者取消支付,反馈支付结果给用户,同时支付系统还应该提供支付方式的选择的功能。4移动商城客户端系统实现 关于实验移

32、动商城客户端系统的UI设计参考美车美品iOS客户端,商品信息及图片抓取均来源于该美车美品APP。所有信息仅供学习使用。4.1实验环境搭建 本次课题实验所使用的环境第二章都已经基本介绍完毕。关于实验所用Xcode在苹果官方App Store搜索下载即可。4.2系统软件代码结构 按照iOS开发规范,参照美车美品客户端的UI设计,各功能模块实现,最后编译并通过测试。主要包括头文件,基础控件文件,软件开发工具包,数据文件,网络文件,视图控件文件,系统支持文件,及编译通过后的可执行文件。4.3用户管理功能实现由需求分析及功能模块设计可知用户管理主要需要完成用户注册,登陆,编辑个人信息,退出登陆等功能。1

33、.注册功能的实现+(void)userRegister:(NSDictionary*)info andSuccessBlock:(userSuccessBlockFunc)success and FaileBlock:(userFailBlockFunc)fail 定义了一个类方法:userRegister以字典类型的对象info作为参数传递用户信息。方法内利用send方法将info发送给服务器,用get方法请求服务器处理结果。以功能块完成回调,如果get注册成功就调用SuccessBlock块否则调用FaileBlock块,显示回调的注册信息。大批发用户注册类方法的实现过程与普通用户注册的实

34、现过程类似。2.修改密码的实现+(void)changePasswordWithOldPass:(NSString*)oldPass and NewPass:(NSString*)newPass SuccessBlock:(userSuccessBlockFunc)success and FaileBlock:(userFailBlockFunc)fail修改密码定义了一个类方法changePasswordWithOldPass来实现的,以字符串类型的对象oldPass和newPass分别作为参数传递原密码以及新密码。同样通过send方法发送新旧密码到服务器,由服务器处理密码的修改过程,方法内

35、通过get方法获取服务器的处理结果。以功能块SuccessBlock和FaileBlock完成回调,通过UIselder将服务器的返回值显示出来。 以上详细介绍了用户注册和用户修改密码的实现过程。除此之外,用户管理模块还实现了用户登录,登出,编辑个人信息等功能,但实现过程与以上两个过程完全类似,而且它们的参数均是字典类型的。 4.4购物车功能模块的实现购物车的主要功能就是加入和删除商品,查看详细商品信息的实现会在信息展示功能模块阐述。将商品加入购物车的实现+(void)addShoppingListWithDic:(NSDictionary*)dic and SuccessBlock:(suc

36、cessDicBlockFunc)success and FailBlock:(failBlockFunc)fail;定义了一个返回值为空的方法addShoppingListWithDic,参数dic为字典类型,保存商品信息。将该商品信息发送给服务器,请求添加到购物车。获取处理结果,如果添加成功通过SuccessBlock显示添加后的View,如果添加失败,则以FailBlock块提示信息。从购物车删除商品的实现与加入商品的实现相类似,只不过向服务器发送的是delete的请求处理。 4.5订单管理的实现 本功能快主要实现的是对订单的管理包括包括提交,删除以及获取订单详情的功能。其中删除和提交订

37、单功能类似,以下只阐述订单提交的实现过程。1.提交订单的实现+(void)submitFormWithDic:(NSDictionary*)dic and SuccessBlock:(successDicBlockFunc)success and FaileBlock:(failBlockFunc)fail;类方法submitFormWithDic,实现了提交订单的功能。参数dic为字典类型,保存订单信息。submitFormWithDic将订单信息发送给服务器。用get方法获取处理结果,如果成功提交,就生成订单,SuccessBlock块会接收处理返回的信息,并将处理结果显示到View上,如

38、果提交的话,就执行FailBlock块,显示提示信息。2.获取订单详细+(void)orderDetailFormId:(NSString*)ordered and SuccessBlock:(successDicBlockFunc)success and FaileBlock:(failBlockFunc)fail;orderDetailFormId获取订单详情的类方法,NSString类型的对象ordered保存订单号。将订单号传给服务器,请求订单详情并用块实现回调,如果获取信息成功则用SuccessBlock显示订单详情,否则用FaileBlock提示相关信息。4.6商品信息展示功能模块

39、的实现该模块是用户接触最多的模块,但实现过程与其他过程大同小异。主要有获取首页,所有商品,以及商品详细信息等功能。1.获取首页相关数据的实现+(void)getHomeGoodsSuccessBlock:(goodSuccessBlockFunc)success and faileBlock:(goodFailBlockFunc)fail; 该类方法直接通过接口发送数据请求,通过功能块实现回调。数据获取成功用getHomeGoodsSuccessBlock块显示出来,否则用faileBlock显示提示信息。获取产品详细信息+(void)getGoodDetailWithGoodId:(NSSt

40、ring*)goodId successBlock:(goodSuccessBlockFunc)success and FaileBlock:(goodFailBlockFunc)fail;getGoodDetailWithGoodId通过字符串类型的对象goodId作为参数从服务器请求商品详细信息,其中goodId保存的是商品号。如果获取数据成功,用方法successBlock将显示出来,否则执行FaileBlock。4.7支付功能的实现1.更改支付方式的实现-(void)payMethodChange:(NSNotification* )notify;通过单例类NSNotification

41、对象,以不同的按钮选择不同的支付方式,为各个按钮添加相应的点击事件调用不同的API。因为使用单例类,对其他部分没用任何影响,从而可以安全高效的支付方式。2.付款的实现+(void)orderPayOverFormId:(NSString*)ordered and SuccessBlock:(successDicBlockFunc)success and FaileBlock:(failBlockFunc)fail;当订单提交成功后,会生成订单,然后选择支付方式,因此更改支付方式的方法payMethodChange会被封装在orderPayOverFormId类方法中。SuccessBlock和

42、FaileBlock功能块实现从服务器端回调相应的支付信息,显示给用户做相应处理。4.8 其他功能及用户界面 1 App的启动 程序实现如下:int main(int argc, char * argv) autoreleasepool return UIApplicationMain(argc, argv, nil, NSStringFromClass(AppDelegate class); 程序的入口,通过UIApplicationMain系统方法实现了程序的编译运行。其中前面两个参数来自main()的两个参数没有实际意义。第三个参数,主要类,当为nil时表示UIApplication。第

43、四个参数代理类,负责控制程序的运行。 2 检测新版本-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data请求服务器,服务器上有版本号校验码,如果更新就返回1,否则返回0。然后跟据返回值判断是否有版更更新,从而实现软件版本更新的检测。3用户界面的实现UI的设计参考了美车美品客户端的UI设计。首页滚动视图无限循环的实现对UIScollView重载,content的尾部增加一个与首位相同的视图。当滚动到尾部时,继续向下一个视图滚动,看起来是滚动到首位视图,然后从该视图切换到首位的视图,切换时关闭动画

44、效果。利用UITableBar和UInavigation实现导航视图。用户界面的文本和web视图的实现由UITextView和UIWebView实现。界面中控件的创建则由UIControl的各子类实现。包括按钮,页面的跳转,滑动,开关控制器等。通过UISearchBar类来进行检索,这是UIKit框架中封装的的检索类。UISearchBar代理里面的方法,实现搜索功能。5 移动商城客户端功能测试5.1关于功能测试在项目完成后进行系统测试,可以保证所开发应用的流畅性、无错性、满足需求性。系统测试是针对整个产品系统进行的测试,系统测试的过程中在发现问题之后,需要找出错误原因和位置并改正。对于iOS

45、应用程序的调试大多使用 Simulator模拟器来进行. iOS Simulator是Xcode的一部分.iOS Simulator是个模拟器,但并非仿真器,模拟器会模仿实际设备的行为。iPhone Simulator会模仿实际的iOS/iPad设备的真实行为;但模拟器本身却使用了Mac上的各种库(如Quicktime)进行渲染以便效果与实际的iPhone保持一致。我们都知道测试程序运用最多的就是白盒测试和黑盒测试了。白盒测试就是对软件系统的相关代码进行详细的测试,在程序的开发过程中边开发边测试。因为本款移动商城客户端只做学习之用,软件进行黑盒测试部分时只使用了simulator模拟器来进行,

46、并没有进行真机测试。 Xcode编译iOS项目后自动打开iOS模拟器去调试当前程序,在调试Xcode中的iOS程序时,点击对应的Run即可。5.2整体功能测试 经过测试,可是说本款软件整体流畅,功能完备,基本满足用户需求,达到了预期的实验设计效果。能够满足用户从挑选商品到购买商品过程中的全部动作要求。5.3注册登录功能测试 经过测试,用户能够通过手机成功接收验证码,完成注册,并成功登陆,非注册用户不能登陆。 登录和注册实现结果如图5-1和5-2所示。 图5-1登录界面 图5-2 注册界面5.4详细商品信息查看功能测试进入软件后,可以通过滑动浏览商品海报,想要查看商品的详细信息,点击该商品即可,同时从购物车,订单管理系统点击商品同样可以浏览商品的相关详细信息。各个页面间的跳转准确流畅,信息齐全,基本实现了需求分析的各个功能。

温馨提示

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

评论

0/150

提交评论