毕业设计(论文)-基于iOS平台的周边推荐游系统的设计与实现(25页).docx

上传人:1595****071 文档编号:38775961 上传时间:2022-09-05 格式:DOCX 页数:25 大小:239.69KB
返回 下载 相关 举报
毕业设计(论文)-基于iOS平台的周边推荐游系统的设计与实现(25页).docx_第1页
第1页 / 共25页
毕业设计(论文)-基于iOS平台的周边推荐游系统的设计与实现(25页).docx_第2页
第2页 / 共25页
点击查看更多>>
资源描述

《毕业设计(论文)-基于iOS平台的周边推荐游系统的设计与实现(25页).docx》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于iOS平台的周边推荐游系统的设计与实现(25页).docx(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-毕业设计(论文)-基于iOS平台的周边推荐游系统的设计与实现-第 25 页基于iOS平台的周边推荐游系统的设计与实现1 引言随着科技的高速发展,苹果手机的普及和更新步伐极大的改变了人们的生活质量。人们不仅对生活水平的要求越来越高,对自己的精神生活要求也越来越高。人们周末或者节假日大多会选择出去旅游来放松自己和丰富自己的精神生活。这时一个方便人们寻找旅游目的地的应用软件将非常受欢迎。1.1 课题的研究背景随着国家经济发展速度的不断提高,随之人们的生活水平发生了改变,越来越多的人选择走出家门去旅游的方式来丰富自己的生活和精神需求。但是又有很多人没有确定的旅行目的地,这时很需要这样一款应用基于iO

2、S平台的周边推荐游玩系统。1.1.1 软件概述该软件使用的是苹果公司提供的Xcode 7开发环境,用iPhone模拟器和iOS设备对本软件进行调试及运行。本软件可以查找周边游、音乐演出、戏剧&话剧、展览、私厨美食、电影、聚会、运动、商业、公益等10项主题,通过此软件用户可以选择符合自己的主题,然后在应用提供的活动或景点中选择,确定最终目标。1.1.2 iOS系统平台介绍iOS是由苹果公司开发的移动设备操作系统,这些移动设备包括iPhone、iPod touch、iPad和Apple TV等,目前最新的操作系统是iOS9Error! Reference source not found.。这个系

3、统最初是给iPhone用户设计的,后来逐渐应用到iPad touch、iPad以及Apple TV等产品上。iOS系统是基于MacOS/Darwin的手机操作系统平台,它是一个与硬件分离的软件体系结构,现在也可以动态的升级来适应技术的不断发展。本地的应用程序和用户的数据都可以通过iTunes同步到用户的计算机设备上。它的优势是iPhone是Mac出的封闭的手机系统,它的源代码不开放,扩展相对不足,移植性比较好。它的特性是:模块性、灵活性、可伸缩性和可操作性。1.2 系统开发意义本节将从基于iOS平台的周边推荐游玩系统的市场价值和iOS的应用价值两方面进行阐述,说明本应用的开发意义所在,最根本的

4、意义是方便大众,服务大众,让更多的人体验到科技带来的快捷。1.2.1 市场价值随着经济的发展,旅游业也蓬勃兴起,越来越多的人加入到旅游的行列,有的人局限于时间,有的人局限于地域而不确定到底要去哪里游玩,尽管在时间地域都可以的情况下也不清楚自己要去哪里旅行,他们要询问朋友、百度搜索,但是很麻烦而且浪费时间,这是一款对应的软件就成了大家的最爱。在这里用户可以搜索任何城市的周边游、音乐演出、戏剧&话剧、展览、私厨美食、电影、聚会、运动、商业、公益等10项主题活动,极大地方便了人们的出行和节约了时间。该软件在很大程度上满足用户的需要,符合客户的心意,将受到广大用户的喜爱。通过市场调查和互联网检索发现,

5、没有较强针对性的同类型软件以供使用,本系统的设计能方便大家的使用和受到大家的喜爱。综上所述,开发该软件将有很大的市场价值。1.2.2 iOS的应用价值iOS作为移动操作系统的先驱,不管是它的理念还是其演进速度在业界都是首屈一指的,基于iOS系统的手机平台应用可以更好地体现并提升其自身的应用价值。iOS作为苹果公司为手持设备开发的系统,能够为广大用户喜爱的一个重要原因是优雅直观大方的界面Error! Reference source not found.。首先,iOS平台的应用数量多,而且质量好,受到人们的信任。Android平台上的大多数软件都是从iOS平台上移植来的,但iOS系统的应用界面和

6、操作逻辑与Android系统不相适应。其次,iOS系统上的软件APP多优先升级,例如:微信朋友圈的“小视频”功能是苹果公司的iOS系统优先升级并推出的,而使用其他系统的用户则多等了几个星期的时间才可以在自己的手机上应用“小视频”的功能。然后就是手机平台的硬件资源是有限的,所以手机应用在开发时必须充分考虑其硬件资源的利用率。iOS系统有相对充裕的硬件资源支持和更强、更快的数据处理能力,为开发者提供了较大的资源利用空间,从而使得应用运行得更加顺畅,功能也可以更为强大。iOS设备的利润率高的惊人,以智能手机为例,iPhone的利润额占到整个智能手机利润额的80%,受益于此,苹果的市值也达到了5000

7、亿美元Error! Reference source not found.。综上所述,基于iOS平台的周边推荐游玩系统看作为一款全新的应用,放到iOS系统手机平台上,不仅可以丰富iOS系统手机的应用领域,更可以较快地得到众多手机用户的认知与支持,并且在最大程度上方便用户、给用户以更好的体验。1.3 iOS API简介本节主要介绍iOS的整体框架,它的框架分了四层Cocoa Touch层、Media层、Core Services层和Core OS层Error! Reference source not found.。如下图1-1为iOS的整体框架图。图1-1 iOS的整体框图接下来分别介绍iOS

8、整体框架中的四个层:Cocoa Touch层提供了iOS应用构建要用到的一些基本的系统服务和关键框架,其基本的系统服务包括多任务、触摸输入、推送通知等,是iOS系统中最基本的功能。其关键的框架包括:Address Book UI(访问用户联系人的信息)、Message UI(提供发送E-mail相关的API)、Photos UI(提供浏览相片相关的API)、UIKit(提供UI类)等。Media层提供了图像、音频、视频和AirPlay技术,其中AirPlay是一种播放技术,可以将iPhone、iPod touch、iPad、Mac等设备上的视频镜像传送到支持AirPlay的设备上。本层关键的框

9、架包括:Assets Library(为用户访问图片和视频提供接口)、Audio Toolbox(录制和播放音频、音频流以及格式转换)、AudioUnit(可以使用内置音频单元服务以及音频处理模块)等。Core Services层提供了云储蓄、自动引用计数、快对象、应用内购买、SQLite数据库等技术。整体来说本层是系统中很多部分的基础部分,这些服务也许并不直接被应用程序所使用,但是本层提供了所有应用程序的基础系统服务。本层关键的框架包括:Accounts(用于访问用户的Twitter账户)、Core Location(提供定位服务的API)、JavaScriptCore.framework(

10、为Core Foundation框架的许多功能提供Objective-C封装)等。Core OS层提供了一些低级的功能,但在普通的开发中一般不会直接使用它。本层关键的框架包括:Accelerate(访问重力加速计API)、Core Bluetooch(访问低能耗蓝牙设备API)等。1.4 本文主要内容本文严格按照软件工程的流程对本课题进行了设计与实现,采用面向对象的思想进行了该应用的框架设计和编码实现。该应用是在iOS平台上开发的,所以开发者必须熟知开发iOS系统手机应用必须要掌握的知识和技术。对于基于iOS平台的周边推荐游玩系统,应该了解该软件的特性,了解应用程序的特点,在此基础上如何设计整

11、个应用的交互和数据服务,是本课题要研究的核心部分。在设计过程还涉及到了几种非常重要的功能:HTML解析、网络连接优化、应用交互等等。同时还需注重运用iOS系统开发技术解决动画特效、事件处理响应等相关问题。最后在iOS平台提供的手机模拟器上测试运行,并在实际的iPhone手机设备中做进一步的调试与运行,查看最后得到的效果如何,比如画面,界面布置。通过若干人的使用检验该软件是否考虑到用户们的各种需求,通过检测、修改,最后成功完成了该软件的开发。1.5 论文结构本论文共分为六章,内容安排如下。第一章主要讲述了研究本课题的背景与意义,向用户大概介绍一下该软件,介绍它的研发目的和大概结构框架。同时也分析

12、了该软件的市场价值和在iOS平台上开发的价值,也大概介绍了一下iOS系统和iOS系统相对于Android系统的优势。此外还大致讲述本课题主要研究的主要内容和本论文的结构。第二章主要介绍了在iOS平台上开发应用该软件的开发环境和关键技术。然后对开发环境、关键技术和编程语言进行了详细的介绍。第三章是本课题设计的关键需求分析阶段。获取并分析总结基于iOS平台的周边推荐游玩系统的相关需求,其中包括功能需求、非功能需求等等。该章还讲述了基于iOS平台的周边推荐游玩系统的应用特性。第四章在前期分析成果的基础上对课题进行总体设计。总体设计后得出总体设计方案,并根据基于iOS平台的周边推荐游玩系统的特点性能进

13、行了细致的功能模块划分与整体设计。第五章是应用的开发实现和效果演示阶段,其中阐述了开发前的准备工作、各个功能模块的实现以及应用控制器框架、网络请求、动画、其他功能的实现过程和演示,解决之前的分析与设计过程中提出的核心问题,并描述了应用在iOS系统手机模拟器和iOS系统真机上的测试与调试过程,同时展示了应用的最终运行效果。第六章是对本系统的测试与调试,主要是检测系统功能是否实现、观察UI是否符合设计、检测网络的连接是否顺畅、检测能否关联相关文件、观察动画效果以及键盘弹出后内容是否显示正常,并加以截图辅助显示真机效果。2 开发环境及关键技术2.1 iOS系统框架简介在iPhone移动应用开发中,U

14、IKit是构建所有的iPhone应用程序都离不开的框架,在本质上它们具有相同的核心架构。运行应用程序和协调用户输入及屏幕显示所需要的关键对象都由UIKit负责提供。如何配置缺省对象以及如何通过定制对象来添加用户界面和行为是应用程序之间不同的地方。iOS是一个为国际互连优化的操作系统,长时间有效地维护一个互联网络的统一规则就是它提供的。从用户打开设备的那一刻起,iOS就能为用户提供内置的安全性。底层级的硬件和固件功能是iOS专门设计的,用来防止恶意软件和病毒;同时还设计的高层级OS功能,有助于在系统访问个人信息和企业数据时确保安全性。本软件系统的设计与实现综合运用了多项知识点,这就需要先对iOS

15、应用的开发环境和所用的关键技术有所认识和了解。iOS设备可以在世界各地通用,可以在30多种语言中来回切换。本系统选择的是在iOS设备上面进行开发,会用到Xcode开发工具。2.2 iOS应用的开发环境iPhone操作系统的支持能力非常丰富,iPhoneOS支持的软件类型众多、可以在Safari中浏览的各类web页面以及原生的iPhone应用。本小节将简单介绍iPhoneOS的软件类型的宽泛分类。iOS应用软件在应用软件类型划分为三种宽泛的目录:(1)纯iPhone应用可以用iPhone SDK开发由iPhone OS原生支持的应用。(2)Web应用是指一种可以通过Web访问的应用,其优点是很容

16、易对其进行访问,只要浏览器即可。(3)混合类应用是指通常通过web视图区域提供访问web内容的功能,但包含一些iPhone OS用户界面元素的iPhone应用。本应用属于混合类应用,就是创建混合原生应用和网页特性的应用。该应用使用原生iPhone应用提供大多数的结构和功能,通过web形态提供界面,并且一般会包含标准的iPhone用户界面组件。iPhone SDk组件包是在苹果应用开发中需要准备的,并且是苹果应用开发过程中必不可少的。其中iPhone SDK由以下若干组件构成的,而且这些组件也是组成iPhone开发环境基础的组件Error! Reference source not found.

17、,如表2-1所示。表2-1 iPhone开发环境组件组件组件介绍XcodeXcode是iPhone开发工具库中最为重要的一款工具。它提供了一个全面的项目开发和管理环境,包括源代码编辑、丰富的文档和一个图形化调试器。Xcode围绕开源GNU工具即gcc(编译器)和gdb(调试器)构建而成。InstrumentsInstruments用于分析iphone应用程序的内部运行状况。它监控内存利用率和性能指标。这样就可以准确找到并锁定应用程序中的问题,并采取措施提高程序的效率。DashcodeDashcode可创建在传统浏览器环境之外运行的、基于Web的独立应用程序。从概念上说,iPhone版本Dash

18、code的运行原理与其桌面版本类似,具备布局和调试工具。Dashcode并采用本机应用程序编译方式,而提供基于Web的开发方式。仿真器(Simulator)iPhone仿真模拟器运行于Macintosh之上,借助它,无需连接到实际的iPhone或iPod touch,就可以在台式机创建和测试应用程序。仿真模拟器提供的API与iPhone上使用的相同,并针对开发者的概念设计提供相对应的预览。在使用仿真器时,Xcode将编译在Macintosh本地运行的Intel x86代码,而不是iPhone上使用的基于ARM的代码。IB(Interface Builder)IB提供了一个快速的原型工具,可以图

19、形化的方式布局用户界面,以及从Xcode源代码连接到这些预构建的界面。借助IB,可以使用可视设计工具绘制界面,然后将这些屏幕元素连接到应用程序中的对象和方法调用。此外,苹果应用的开发还需要在拥有英特尔处理器,且运行Mac OS X Leopard系统的Mac上才可以使用SDK。2014年6月3日,苹果公司在苹果年度全球开发者大会上正式公布了最新版iOS系统即iOS8.根据现阶段技术的成熟度,和当今大多数用户的喜好,本软件系统选用iPhone手机和iPad作为运行平台,具体所用到的开发环境如表2-2所示。表2-2基于iOS平台的周边推荐游玩系统的开发环境操作系统:OS X 10.10手机平台:i

20、OS 8.0集成开发环境:Xcode 7开发语言:ObjectiveC测试真机:iPhone 62.3 关键技术介绍及相关介绍iOS操作系统是由苹果公司为iPhone开发的。2007年1月9日苹果公司在Macworld大会上公布这个系统,该系统最初是设计给iPhone用户使用的,后来逐渐应用到iPod touch、iPad以及Apple TV等产品上。iOS操作系统与苹果的Mac OS X操作系统一样,属于类Unix的商业操作系统。iOS平台的关键技术有Button控件的使用、Label控件的使用、Webview控件的使用、网络数据的获取与解析、模型数据的获取与存储和自定义动画效果等。控件通过

21、目标-动作的模式将用户的交互通知给应用程序。当用户用预先定义好的交互方式(比如轻点某个按键)进行交互时,控件就会将用户的消息(动作)发送给指定对象(目标)。目标对象接收到动作消息后,就会以恰当的方式对用户的消息(动作)进行响应(比如在按动按键时更新应用程序的状态)。2.3.1 Xcode开发环境介绍Xcode是苹果公司开发的、在操作系统Mac OS X上运行的集成开发工具(IDE)。Xcode用户界面的设计统一,系统的编码、测试、调试都是在一个简单的窗口内完成的。Xcode是开发OS X和iOS应用程序的最快捷的方式,开发Mac OS X和iOS的应用程序时,其需要在Mac操作系统下运行。此外

22、,Xcode可以帮助提高诸如计算和渲染引擎应用程序的能力,并且这些能力非常适合数据集中的应用程序。不仅这些能力可以通过访问内存中的数据使运行速度变得更快,远远超过读取磁盘中数据的速度,而且Xcode可以在构建中引进多重处理器来提高速度。MacOSX综合开发环境Xcode为各种MacOSX软件项目提供项目编辑、搜索浏览、文件编辑、项目构建和调试设备等功能。Xcode支持的语言有swift、 C语言、C+、Fortran、Objective-C、Objective-C+、Java、AppleScript、Python以及Ruby,提供的编程模式有Cocoa、Carbon以及Java等。Xcode套

23、件的后台调试工具是GDB,它的特点是编译速度极快,并且每次操作都很快速和轻松。它不仅可以为所有的Apple开发者提供单独的搜索和显示界面,还可以提供Apple开发者文件,文件包括苹果公司的在线文件,以及存放在电脑上的文件。新的参考资料库甚至可以帮用户定期将更新的资料下载到的电脑,保持文件的最新状态,Xcode将会帮助用户快速找到最新的答案。2.3.2 iOS系统的触控界面iOS系统操作采用多点触控界面对系统进行直接操作,其控制方法包括滑动屏幕、轻触屏幕和图标及按压按键(音量键、关机键和home键)。操作有滑动、轻按、缩小及放大。iOS移动设备中还内置了加速器,当旋转iOS设备时,界面也会旋转,

24、这样在使用iPhone等便携式设备时会更加方便。iPhone装备的陀螺仪是自3GS开始的,它使iPhone有了重力感应,应用效果也更加突出。屏幕的最下方按键是home键,点触Home键可以回到主界面。屏幕的底部可以安放四个使用者最经常使用的程序的图标,方便用户的使用。屏幕最上方是状态栏,显示的是一些有关有息如时间、电池电量和讯号强度等。其余的屏幕用于显示当前的应用程序。如果想要启动某个程序,用户只需点触该程序的图标,想要退出应用程序时点按屏幕下方的home键即可。在iPhone3.0及后续版本中,即使应用程序是退出状态,当第三方软件收到了新的信息时,苹果公司的服务器也会把这些通知推送至iPho

25、ne或iPod Touch上(不管它是否正在运行中)。2.3.3 苹果应用高级开发语言高级编程语言Objective-C不仅是扩充C的面向对象的编程语言,而且是以C为基础并结合Smalltalk特征扩充出来的面向对象语言。Mac OSX和GNUstep这两个以OpenStep为标准的系统是该高级编程语言的主要用武之地,而且在NextStep和OpenStep中的基本语言更是ObjectiveC这个高级编程语言。ObjectiveC是1980年代初布莱德.考克斯(Brad Cox)在他的公司发明的。Swift语言是一种用来编写OS X和iOS应用程序的、易于上手的编译式程序语言,而且它还是第一套

26、和脚本语言一样具有表现力和趣味性的系统编程语言。Objective-C是一种非常实用的语言,它是一个用C语言写成的很小的运行库,用它写出来的程序通常不会比它的原代码大很多,如果想要学习该语言,可以在极短的时间内学会它,并快速将它运用于简单项目。Swift结合了C和Objective-C的优点并且不受C兼容性的限制,用于编写iOS和OSX应用,而且swift采用的安全编程模式添加了很多新特性,使编程更简单、灵活和有趣。下面列举一下Objective-C和C+、C语言之间的不同点。C+对C语言仅在大部分语法上兼容,而Objective-C对标准C语言则是完全兼容。在重载、继承问题上和C+不同的是,

27、Objective-C不支持运算子重载(它不支持ad-hoc多型),同样和C+不同但和Java相同的是Objective-C只容许对象继承一个类别(不设多重继承)。因为Objective-C是动态定型,它的类库比C+容易操作,且它在运行时可以允许根据字符串名字来方法和类,还可以动态连接和添加类。Objective-C里决定用户是否可以给它发送消息的是对象的动态类型,而C+是由静态类型决定的。和其他面向对象语言一样,Objective-C用来封装数据以及操作数据的行为的基础结构是类。实例方法和类方法是Objective-C中的类可以声明的两种类型的方法。方法类型标识符、返回值类型、一个或多个方法

28、标识关键字、参数类型和名信息均属于方法声明。2.3.4 MVC模式简介MVC作为一种经典的软件体系结构,已经得到了广泛应用。在传统的web系统设计中,数据库的访问、业务逻辑和UI设计混淆在一起,这样虽然直观,但一旦需求有所改动,对日后的维护带来很多不便。为了解决这个问题,人们提出了分层的架构思想。MVC设计模式把应用程序抽象为Model(模型)、View(视图)、Controller(控制器)三个功能截然不同的部分Error! Reference source not found.。本系统就是使用MVC的架构模式。这样能够使程序比较直接的反应问题和想要达到的目的。根据iOS平台的架构特性和应用

29、功能特点可以把本应用用到的类大致分为三类Error! Reference source not found.,详细解释如表2-3。表2-3 具体结构分析表层次作用模型层(model)封装了应用的一系列数据, 并定义了操作, 处理这些数据的逻辑和计算规则。视图层(view)视图对象是一个应用中, 用户可以看到的对象. 视图对象知道如何绘制自己, 也能够响应用户的操作. 视图对象的主要目的之一是将应用模型对象中的数据显示出来, 并允许用户编辑该数据控制器层。控制器层(controller)控制器层是在视图层和若干个模型层的中间连接部分。2.3.5 JSON数据解析数据解析模块中iOS的网络数据解析

30、有JSON和HTML,其中JSON解析有四种主要的子方法,JSON作为一种更轻、更友好的 Web services客户端的格式(多采用浏览器的形式或访问 REST风格Web服务的Ajax应用程序的形式)引起了Web服务供应商的注意Error! Reference source not found.。本软件采用的是对HTML数据解析,是从服务器上获取HTML文件进行解析成Object-C能认识的字典类型的数据,从而得到相应的游玩地点的图片、详细地址、推荐价格、开放时间、懒人提示等信息。在HTML数据中应用需要的数据格式是固定的,所以根据HTML中的标签,即可得到相应的数据信息。系统采用的网络引擎

31、是AFNetworking解析网络数据,网络引擎模块的实现依靠于本地发起网络请求、Mapview和TLNetDataEngine等组件,能够实现景点最新信息的获取。2.4 本章小结本节主要介绍了在iOS平台上开发应用该软件的开发环境和关键技术。然后对开发环境、关键技术和编程语言进行了详细的介绍,还介绍了Xcode开发环境和iOS系统控触界面。3 需求分析本文把业务需求、用户需求、功能需求中所具有的特征分别称为服务(service)、用例(usecase)、功能(function)Error! Reference source not found.。这些服务主要针对iPhone的用户,而用户又有

32、不同的生活背景和不同的年龄段,所以本应用应尽可能地满足各类用户的需求,保证用户的普遍适用性Error! Reference source not found.。在开发这款应用软件之前,首先需要了解这个软件的特性以及在平台上开发时需要注意的事项等。其次是获取需求,有助于明确的开发目标采取合适的开发模式。比如单例模式和工厂模式等模式,而单例模式就是软件开发中经常应用到的设计模式Error! Reference source not found.。除此之外开发软件一定要有创新性和实用性,所以针对这款软件本文做了简单的调查,得到的结果是该应用软件应该全面考虑用户的需求,例如,有足够的素材,画面清晰,关

33、于目标的信息全面,功能全面,详细的需求分析将在接下来的部分详细讲述。3.1 可行性分析可行性分析也可称为可行性研究,本节将从经济需求、社会可行性和技术可行性对系统进行充分的可行性分析,奠定系统的开发价值Error! Reference source not found.。下面将详细具体可行性分析的结果。3.1.1 经济可行性分析软件的开发需要在经济可行的情况下才能保证开发顺利的进行下去,所以经济可行性是系统顺利实行的关键。在开发设计上本应用的开发需要使用系统为OS X 10.10的电脑和iPhone SDK组件包以进一步测试苹果手机,以及一部苹果设备。这些设备在周边环境都能找到,而且iPhon

34、e SDK组件包的下载对开发者来说是免费的,苹果设备现在也已经广泛使用。所以在开发过程中所需要的工具在经济上是可行的,而应用开发完成后,只需通过苹果Appstore商店进行审核,通过后便可发布到应用商店供用户下载,自己也可以定制应用的获取费用来为自己获取开发盈利。此过程是完全免费的,无需开发者提供任何经济条件。所以系统经过经济可行性分析得出在经济上系统是可行的结论。3.1.2 社会可行性分析随着社会节奏越来越快,人们承受着越来越大的社会压力。因此人们都用各种方式来为自己缓解压力。而在众多的方式中,旅游、泡温泉、游乐场等方式显得特别受大家欢迎。但是如何及时并快捷的获取这些周边各种游玩场所的信息变

35、成了快节奏生活的人们必要需求,所以系统就顺应了这个需求,以此来确定系统在目前市场的稳固地位。此外单从旅游行业来说,旅游行业逐步成为国民经济发展的重要产业,对整个国民经济和社会发展具有战略性关联带动作用。而系统也顺应在这样范围下的应用,就是一个周边游信息获取并呈现给用户的手机应用。分析本平台的未来前景和存在价值,并从多方面评估开发运行的可行性.。3.1.3 技术可行性分析本应用的开发所使用的编程语言为Object-C,这款开源的面向对象编程语言。这是一种世界上苹果开发者最先接受的语言。经过多年开发使用,其已经逐步成为与苹果应用开发相关联的语言。iPhone SDK提供了丰富的API和开发工具。X

36、code则提供了完整集成开发环境,包括项目管理、代码编辑、创建执行程序、代码级调试、代码库管理和性能调试等等功能,同时还能使用插件进行功能扩展。以上是苹果应用开发的基本技术需求,对于熟练iOS应用开发的工作者基本上是没有技术门槛的。3.2 面向对象分析用例分析是从用例模型到分析模型的过程,是需求与设计之间的桥梁Error! Reference source not found.。用例分析把系统的行为分配给分析类,让分析类交互完成系统的行为。3.2.1 浏览景点用户打开系统后可以在主页上的任意一个景点都会进入首页景点浏览模块。在首页景点浏览模块,首先用户可以在首页上进行模糊浏览自己周边游玩景点,

37、其次如果用户遇见自己感兴趣的景点信息,用户可以进一步查看景点的详细信息。除此之外,用户可以对景点的地理位置进行地图定位、导航路线规划、将喜欢的景点分享给好友、收藏景点等功能。对浏览景点的详细设计如图3-1所示。图3-1用户浏览景点用例图3.2.2 收藏景点系统在设计收藏景点模块,用户首先会对喜欢景点进行收藏操作。然后系统会把用户收藏的景点统一放在收藏的活动的功能模块进行统一管理。在这一功能用户可以点开任意收藏的景点都可查看选中景点的详细情况、对景点的地理位置进行地图定位、景点导航、将景点的信息分享给好友、收藏景点等功能,做到可以从多个途径实现同样的功能。如图3-2为用户活动收藏用例图。图3-2

38、活动收藏用例图3.2.3 查询功能用户在应用本系统的查询功能时可进行的查询功能包括景点的分类查询、热门城市查询和普通城市查询、景点查询和对已收藏景点的查询,该功能可很大程度的提升本系统的便捷性,让用户在相对更短的时间内实现自己想要的功能。如图3-3为查询功能用例图。图3-3查询功能用例图3.3 系统功能需求分析在需求分析中,专门针对客户的需求,做了详细的分析,提出了包括功能性的和非功能性的多方面个性化服务功能需求Error! Reference source not found.。本节将对系统功能性需求分析(行为的)和非功能性需求分析(其它所有的行为),分开进行详细说明系统的具体功能。3.3.

39、1 功能性需求功能性需求指与系统主要工作相关的需求,即在不考虑物理约束的情况下用户希望系统能执行帮用户完成任务的的活动。通过对一些手机用户的沟通和本人使用手机应用程序的经验和体会,本课题中应用的基本需求和功能大体上可以总结如下。(1)显示出主要功能:用户可以更快找到自己的目标,可以自己输入已明确的目标;选择主要功能后,可以自行输入目的地。(2)显示信息:这是一款集出行游玩和娱乐公益于一体的应用软件,在查看某一确定场地时会显示该目标的详细介绍、图片信息及与所在地的距离,还可以对它进行收藏。(3)查看收藏的内容:在寻找目标时会收藏一些不错的地点,当需要查看收藏内容时可以点开“收藏的活动”,方便回忆

40、和选择合适的地点和活动。(4)缓存设置:利用缓存可以降低网络请求压力,也可由用户选择是否清除缓存。(5)地理位置开启设置:开启获取用户的地理位置,应用程序通过用户的地理位置,方便用户做出最优质的决策,制定个性化的旅行计划。3.3.2 非功能性需求分析(1)在性能需求上,本系统属于信息集成平台,根据Apple文档要求,应用程序安装后不要超过20MB。还有时间上,普通情况下搜索时间最大不超过5秒,平均时间在1-3秒以内。(2)在质量属性上,本应用软件所提供的信息是有根据的,具有可信性。只要用户使用,任何时候它都可以使用。用户在本软件的所有信息均不会泄露。(3)系统界面要求上为了更好展现应用效果,应

41、用界面要求竖直布局,全屏显示。根据本系统的功能需求,系统界面主要分为三类。首先是欢迎界面,欢迎界面是系统的开始界面,要有时长合适的开场动画,动画过后进入系统主界面。其次是系统主界面,系统的主页界面提供相应选项供用户选择,例如系统首页、当地文化、交通服务、便利向导等功能性按钮。最后是功能交互界面,功能交互界面是用户可通过选择功能也上方的导航栏来进入下一级界面和返回到上一级界面。(4)系统触控操作方式,现在的iPhone手机都是触屏手机,在软件中最常用的响应用户的两种触控方式,一种是点击,方便用户点击应用图标,另一种是下拉刷新,帮助用户更新数据。(5)中断处理,当系统运行时,要求应用中断前后的运行

42、状态保持一致,保证系统的连续性。3.4 数据需求分析系统是数据的呈现的工具,本节将对系统数据获取途径进行简要介绍。系统数据的获取主要功能设计主要依靠网络请求,网络请求是用户通过控制器触发本系统对网络服务器发起请求后,服务器返回数据,本系统对服务器返回的数据进行解析后反馈给用户的信息,简单数据传递的流程如图3-4所示。图3-4 数据流图网络请求是用户在本地通过触发系统,系统将会自动设置请求路径并创建请求对象,使系统对服务器发出请求,服务器收到请求后会返回相关数据。本系统收到服务器返回的数据后进行JSON数据解析,将HTML数据解析成用户能够直接理解的文字、图片等信息,然后将解析后得到的信息显示给

43、用户。3.5 本章小结本章介绍了本软件的应用特性,得出了应用开发过程中必须注意的一些问题,然后通过对部分用户的面谈和自己的经验、体会得出了本应用软件的功能性需求和非功能性需求,对本应用的开发有了更明确地目标,这样可以更高效地进行应用的开发。4 系统设计经过第三章的需求分析,确定了本应用软件的功能需求。本章将对本软件的总体设计方案、功能模块划分和功能模块设计进行概述,本章采用的是面向对象的思想进行应用的框架设计,详细阐述应用界面和各个功能模块的设计思路,为本软件系统的实现做好充分的准备。4.1 概要设计本节将对系统主要功能模块进行分别介绍,首先是对系统的概要功能进行设计,其次将对系统的各个具体功

44、能模块进行具体设计。对这些模块的具体分析如下。4.1.1 概要功能设计本章节对本系统的总体功能进行概要设计,主要目的对系统的主体功能进行确定。根据对本系统的功能需求分析结果,加上这款软件进行操作时呈现的特色功能,本系统在系统结构上设计左滑导航功能模块和右滑功能功能模块。左滑功能模块主要是对系统功能的操作主要有:首页界面、城市搜索和清除缓存,右侧功能菜单模块主要是对系统提供的特色服务进行的详细分类,主要方便用户的查看操作。系统的详细的功能模块设计如图4-2所示。图4-2 总体功能模块图4.1.2 详细模块设计本软件系统主要功能模块分为三大类,这三大类分别为左划的功能菜单模块、在主页点击景点进入的

45、用户需求菜单模块和右滑的景点分类模块。下面详细介绍一下各个模块的功能。(1)景点分类模块景点分类模块中列举式周边游、音乐演出、电影、聚会等十大热门搜索类别,本功能模块是为了用户可以依据个人喜好偏向缩小用户的查找范围,通过此模块可快速的找到用户可能喜欢的景点,提高本软件的使用便捷性。景点分类详细功能分布如图4-3所示。图4-3右滑分类功能模块图(2)功能菜单模块依据用户的需求,功能菜单模块包含感兴趣的城市、已收藏的城市景点、清除缓存等功能。点击感兴趣的城市进入城市选择界面,其中热门城市置顶凸显本软件的人性化,之后下滑屏幕会看到城市首字拼音字母顺序排列,点击任一城市将进入此城市的景点介绍;设置返回

46、首页功能键目的是为了解决一部分中高龄用户因为对智能客户端操作不娴熟而导致的找不到返回主页面的问题,更突显本软件的人性化;用户还可以对自己喜欢的景点进行收藏,同时为了迎合当今社会线上交友逐渐走向主流的形式,本软件还设置了分享景点功能,方便交友的同时也为本软件做出宣传。左划功能菜单功能模块如图4-4所示。图4-4 左划菜单功能模块图(3)用户需求菜单点击主页界面上的任意景点都会进如相对应的用户需求菜单,在该模块的菜单中,可以看到对应景点的图片介绍、消费水平介绍、景点的开放时间、详细地址介绍、活动详情介绍、懒人提示等。点击详细地址会进入地图定位界面,显示出景点的实际位置,快捷方便的帮助用户找到相应的

47、景点,其详细的功能模块如图4-5所示。图4-5 用户需求菜单功能模块图4.2 详细设计应用界面是用户对应用的第一感受,可能决定这该应用能否被用户使用,同时好的应用界面也是对应用软件本身价值的提升。结合界面要求、需求分析和应用软件的功能体现,作出了如下界面设计。4.2.1 主页界面的设计本软件开始运行直接进入软件的主要内容景点推荐,给用户一种“开门见山”的直爽,这也是本软件的一大亮点,是特意为快节奏的现代城市生活而设计。在这也界面每个景点都是小栏目,在每个栏目的下边会有该景点的名称、离个人所在位置的距离、景点的类型、该景点的收藏人数和景点的大约消费水准。若干信息一目了然。点击任意一个景点栏目都会

48、进入该景点的详细图文介绍,点击距离选项栏会在地图上获取该景点的详细地址,让用户不会在本就时间很短的假期里多走冤枉路而浪费时间。在主页的左右两端上方分别有功能界面和景点分类的Button键,进入主页的流程如图4-6所示。图4-6 主页流程图同时本界面还有景点的开放时间、景点活动详情、针对每个景点的懒人提示等信息,把为用户着想的思路最大化的体现出来,详细设计如下。(1)景点活动分享功能景点分享除了为驴友们设计的功能和对本软件自身的宣传,分享主要通过新浪微博接口分享、人人网、豆瓣网和腾讯微博。先是对分享平台进行选择,选择想要的分享平台并且用户需要登录该平台的个人账户,才能分享自己想要分享的系统信息。关于景点分享的详细流程如图4-7所示。图4-7分享景点流程图本功能通过与数大交友平台搭建桥梁,可以让用户在相应的交友平台上分享相关的景点信息。目的是为了方便一些组团出游的用户,让用户完成一键分享给好友。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁