计算机毕业论文在线点餐系统设计Word格式.docx
《计算机毕业论文在线点餐系统设计Word格式.docx》由会员分享,可在线阅读,更多相关《计算机毕业论文在线点餐系统设计Word格式.docx(47页珍藏版)》请在冰豆网上搜索。
ThesystemusestheHTML5,CSS3,JSandPhoneGapframeworkandtechnology,althoughoursgoalisdevelopmentaclientatAndroidplatform,infactweneednotchangethecodeandwecandeployedittoothersplatform,thisachievethecross-platformdevelopmenttruly,itisthetrendsofdevelopingmobileInternetinthefuturealso.
ThissystemisthesubprojectofHuangganglife,andithaveonlineoperations,anditbroughtgreatconvenienceforthepeople.
KeyWords:
Orderonline;
Android;
MobileInternet
1绪论
1.1设计思想
从我国餐饮业的发展现状看,我国餐饮业当今的特点之一就是在线点餐服务发展迅速,随着互联网普及率的提高,以及互联网应用的深入,网上点餐这个课题已经提出,在线点餐服务已经陆续在北京、上海以及经济发达的一级城市开展,并受到餐饮消费者的欢迎。
为了方便人们生活,提高人们的生活效率,该设计根据现实点餐的方式虚拟于网络之上,以手机为载体,使人们通过手机就可以完成生活中必要的事情(饮食)。
系统的完成不仅可以基本实现客户点餐的功能,还能在此基础上提供更多的,更贴心的服务[1]。
信息技术的发展将更快的推动移动互联网的发展,移动无线点餐系统的重要性也将越显其强大的作用。
我国无线点餐服务平台有很大发展潜力,如果以2011年餐饮业零售额15404[2]亿元的1%的在线点餐佣金计算,在线点餐服务的佣金市场就将近154亿元,再加上广告费等各类其他形式的收入,在线点餐服务平台的潜在市场将至少达到200亿元,这也使得这种商业模式受到风险投资的青睐,并得以迅速发展。
点餐途径有了更好的改善,移动无线手机点餐成为网络点餐又一有力补充,扩大客流,从而整体提高业务量。
倡导了一种时尚,餐店的定位更是网络化,时尚化,具备更为勃勃的生机。
有时间的提前性,方便统筹安排,集中处理。
采用会员制度,设立积分换赠送,营销手段更是利用得淋漓尽致。
设立团体会员制,利用赠品或优惠,扩大市场份额。
评价系统提供了交流的平台,实现消费者可贵信息的反馈和交流。
在线点餐以计算机管理,排除了人为因素的干扰,又使各方面的数据得到严格控制,降低了经营成本,增加了企业效益,大大提高了餐饮业务办公的自动化程度。
无形中就提高了工作效率和企业的管理水平,使企业赢得了时间,赢得了客户,赢得了效益。
这才符合现代化企业管理的要求。
本论文主要介绍翼生活在线点餐系统Android的客户端开发过程以及在开发过程中运用到的原理、技术等,详细地描述了订餐系统制作原理以及该系统在线点餐、结算、检索等功能的实现过程。
在对我国当前餐饮业发展的背景了解后,结合了当前对电子商务系统的大众的需求,再经过对系统的具体分析,形成了前期的功能需求,并对系统做出了概要设计和详细设计,画出系统框架和程序流程图,为系统的顺利开发提供了方向和有力工具。
本系统以当前很火的Android平台为依托,实现系统的全部功能。
通过系统我学会了Android开发技术,掌握各种web开发技术(JS、CSS、HTML5、JqueryMobile等),学会了客户端和服务器端的数据交互的方式及其安全性和效率的思考,以及对于服务器端的搭建和服务器端对数据的处理,后台管理的等技术有了比较系统的了解。
1.2开发模式简介
移动应用产品往往常常考虑多个平台的支持。
单一平台很难保证应用的覆盖面或者换句话说就是用户群体的量和持续的活跃性上从长期的角度而言往往存在短板。
另外从开发的角度而言。
多平台的支持往往需要建立不同的技术团队。
而平台之间开发技术也是完全迥异的。
开发一个具有相同业务的应用Natural-Application需要使用到不同平台的框架和开发语言。
使用C/C++的Symbian、使用ObjectC的iOS和使用Java的Android等应用开发技术,几乎是完全无法融合的,所以当前移动应用开发大致有以下两种模式。
1.2.1NativeApp
就是所谓的原生应用.指的是用平台特定的开发语言所开发的应用.使用它们的优点是可以完全利用系统的API和平台特性,在性能上也是最好的。
缺点是由于开发技术不同,如果你要覆盖多个平台,则要针对每个平台独立开发,无跨平台特性。
1.2.2WebApp
这个主要是采用统一的标准的HTML、JavaScript、CSS等web技术开发。
通过不同平台的浏览器访问来实现跨平台。
同时可以通过浏览器支持充分使用HTML5特性[3],缺点是这些基于浏览器的应用无法调用系统API来实现一些高级功能,也不适合高性能要求的场合[4]。
1.3基本简介
目前绝大多数餐饮企业的经营方式仍停留在“一张纸、一支笔、经理喊破嗓、员工跑断腿”的境地。
在信息技术的迅猛发展,行业竞争日趋激烈的今天,提高餐厅信息化水平,从而改善服务质量,优化经营模式,具有相当的紧迫性。
本在线点餐系统(“翼生活”在线点餐系统)是黄冈生活网项目下面的手机客户端,本系统实现了客户只需要通过手机就可以订餐订座等业务,实现了订餐信息化,智能化和自动化。
本系统的基本功能有:
(1)注册,对于初次使用本系统订餐的客户需要进行注册和登记信息;
(2)订餐,对当前各酒店提供的菜品进行点菜点餐,以及查看所有酒店提供的菜品的详细信息;
(3)订座,客户也可以先订座,选定好时间,各酒店会根据订座的时间给客户预留座位,等客户到位后点餐或者提前以网络、手机、电话等方式订餐均可;
(4)搜索,客户可以搜索酒店、餐厅、菜品信息等;
(5)评价系统,客户对已消费的订单中的菜品予以评价,达到了交流的作用,可以为其他客户提供有用的信息,也可以使酒店、餐厅等进一步改善自己的服务;
本系统的功能包括但不限于以上功能,本系统相对于传统的点菜功能来说更方便也更环保,是操作更方便更简单,管理更智能化自动化。
1.3运行环境
开发硬件平台:
处理器速度1.8MHz以上,1G内存;
开发软件平台:
eclipse;
运行硬件平台:
智能手机CPU512MHz以上,256M内存;
运行软件平台:
Android操作系统(2.1及以上);
数据库:
采用MySql,运行于服务器端。
2相关技术分析
2.1Android操作系统介绍
Android是一种以Linux为基础的开放源代码操作系统,主要使用于便携设备。
目前尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。
Android操作系统最初由AndyRubin开发,最初主要支持手机。
2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。
Android的主要竞争对手是苹果公司的iOS以及RIM的BlackberryOS。
2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。
2012年2月数据,Android占据全球智能手机操作系统市场52.5%的份额,中国市场占有率为68.4%[5]。
2.1.1Android操作系统架构
Android操作系统分为以下四层[6]。
2.1.1.1应用程序层
该层存在着一些系统应用,例如电话、联系人、短信息等。
同时,开发人员开发的第三方应用也存在于该层。
应用程序的开发使用Java语言。
2.1.1.2应用程序框架层
开发人员可以完全访问核心应用程序所使用的API框架。
该应用程序的架构设计简化了组件的重用;
任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。
用户可以对系统提供的一些基础控件进行重新设计,以实现多样化、定制化的效果。
2.1.1.3系统运行库层
该层包含了一些C/C++库,这些库能被Android系统中不同的组件使用。
它们通过Android应用程序框架为开发者提供服务。
同时,该层还包含了一个Java核心库,该核心库提供了Java编程语言核心库的大部分功能。
在这一层还包含了一个Dalvik虚拟机,每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。
Dalvik虚拟机执行.dex的Dalvik可执行文件,该格式文件针对小内存使用做了优化。
同时虚拟机是基于寄存器的,所有的类都经由Java编译器编译,然后转化成.dex格式由虚拟机执行。
Dalvik虚拟机依赖于linux内核的一些功能,比如线程机制和底层内存管理机制。
2.1.1.4Linux内核层
Android的核心系统服务依赖于Linux2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。
Linux内核也同时作为硬件和软件栈之间的抽象层。
2.1.2Android系统的优势
2.1.2.1开放性
在优势方面,Android平台首先就是其开放性,开发的平台允许任何移动终端厂商加入到Android联盟中来。
显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。
开放性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。
开放的平台也会带来更大竞争,如此一来,消费者将可以用更低的价位购得心仪的手机[7]。
2.1.2.2挣脱束缚
在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。
自从iPhone上市,用户可以更加方便地连接网络,运营商的制约减少。
随着EDGE、HSDPA这些2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。
2.1.2.3丰富的硬件
这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。
功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容。
好比你从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。
2.1.2.4开发商
Android平台提供给第三方开发商一个十分宽泛、自由的环境。
因此不会受到各种条条框框的阻挠,可想而知,会有多少新颖别致的软件会诞生。
但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android难题之一。
2.1.2.5无缝结合的Google应用
如今叱诧互联网的Google已经走过10年度历史。
从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。
2.2Eclipse介绍
2.2.1简介
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。
虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。
Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
这种平等和一致性并不仅限于Java开发工具。
尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;
例如,支持诸如C/C++和COBOL等编程语言的插件已经可用,或预计将会推出。
Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。
基于Eclipse的应用程序的一个突出例子是IBMRationalSoftwareArchitect,它构成了IBMJava开发工具系列的基础。
2.2.2语言扩展
Eclipse是著名的跨平台的自由集成开发环境(IDE)。
最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。
Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。
许多软件开发商以Eclipse为框架开发自己的IDE。
Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。
IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE。
目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、RationalSoftware、RedHat及Sybase等。
Eclipse是一个开发源码项目,它其实是VisualAgeforJava的替代品,其界面跟先前的VisualAgeforJava差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。
近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。
2.2.3插件开发环境
Eclipse的插件机制是轻型软件组件化架构。
在富客户机平台上,Eclipse使用插件来提供所有的附加功能,例如支持Java以外的其他语言。
已有的分离的插件已经能够支持C/C++(CDT)、Perl、Ruby,Python、telnet和数据库开发。
插件架构能够支持将任意的扩展加入到现有环境中,例如配置管理,而决不仅仅限于支持各种编程语言。
Eclipse的设计思想是:
一切皆插件。
Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。
Eclipse基本内核包括:
图形API(SWT/Jface),Java开发环境插件(JDT),插件开发环境(PDE)等。
2.2.4主要组成
Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。
它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成——EclipsePlatform、JDT、CDT和PDE。
JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,EclipsePlatform则是一个开放的可扩展IDE,提供了一个通用的开发平台。
它提供建造块和构造并运行集成软件开发工具的基础。
EclipsePlatform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。
2.3HTML5简介
HTML5是用于取代1999年所制定的HTML4.01和XHTML1.0标准的HTML标准版本,现在仍处于发展阶段,但大部分浏览器已经支持某些HTML5技术。
HTML5有两大特点:
首先,强化了Web网页的表现性能。
其次,追加了本地数据库等Web应用的功能。
广义论及HTML5时,实际指的是包括HTML、CSS和JavaScript在内的一套技术组合。
它希望能够减少浏览器对于需要插件的丰富性网络应用服务(plug-in-basedrichinternetapplication,RIA),如AdobeFlash、MicrosoftSilverlight,与OracleJavaFX的需求,并且提供更多能有效增强网络应用的标准集[8]。
HTML标准自1999年12月发布的HTML4.01后,后继的HTML5和其它标准被束之高阁,为了推动web标准化运动的发展,一些公司联合起来,成立了一个叫做WebHypertextApplicationTechnologyWorkingGroup(Web超文本应用技术工作组-WHATWG)的组织。
WHATWG致力于web表单和应用程序,而W3C(WorldWideWebConsortium,万维网联盟)专注于XHTML2.0。
在2006年,双方决定进行合作,来创建一个新版本的HTML[9]。
HTML5草案的前身名为WebApplications1.0,于2004年被WHATWG提出,於2007年被W3C接纳,并成立了新的HTML工作团队。
HTML5的第一份正式草案已于2008年1月22日公布。
HTML5仍处于完善之中。
然而,大部分现代浏览器已经具备了某些HTML5支[10][11]。
2.4PhoneGap简介
PhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台。
它使开发者能够利用iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以以此扩展无限的功能。
PhoneGap是免费的,但是它需要特定平台提供的附加软件,例如iPhone的iPhoneSDK,Android的AndroidSDK等,也可以和DW5.5配套开发。
使用PhoneGap只比为每个平台分别建立应用程序好一点点,因为虽然基本代码是一样的,但是你仍然需要为每个平台分别编译应用程序。
2.5MySQL简介
MySQL的SQL“结构化查询语言”。
SQL是用于访问数据库的最常用标准化语言。
MySQL软件采用了GPL(GNU通用公共许可证)。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
2.5.1系统特性
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性
2.支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统
3.为多种编程语言提供了API。
这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
4.支持多线程,充分利用CPU资源
5.优化的SQL查询算法,有效地