基于Ps的茶馆App界面设计与制作设计和实现计算机科学与技术专业.docx
开题报告一、结合毕业设计(论文)课题情况,根据所查阅的文献资料,每人撰写不低于IooO字的开题报告。5 .研究的背景和意义目前随着移动设备越来越普及以及移动设备的硬件的提升,移动设备的功能越来越完善,android系统平台也日渐火热起来。目前为止国内已经有很多Android系统的用户。截止2013年Android系统的国内市场占有率已经过75%,在西欧以及北美智能手机市场占有率也在80%左右。可见Android系统正处于发展的顶峰。手机游戏作为AndrOid系统平台的一个重要组成部分,正在被越来越多的人所重视。全球在使用的移动电话己经超过59亿部,而且这个数字每天都在不断增加。手机游戏潜在的市场比其他任何平台都要大。6 .研究的目标制作出一款可以在案桌平台上完美运行的贪吃蛇游戏,学习JaVa程序设计基本技术,学习用android开发JaVa程序的相关技术,熟悉游戏“贪吃蛇”的需求,熟悉项目开发的完整过程。学会怎样进行一个项目的需求分析、概要设计、详细设计等软件开发过程,熟练地掌握JaVa程序设计的基本技术和方法,熟练地掌握android环境的使用方法,培养初步的项目分析能力和程序设计能力。二、本课题要研窕或解决的问题和拟采用的研究手段(途径1、研究的问题:1游戏动画中的碰撞检测问题2.基于Android游戏动画的实现7 .研究手段:自行学习。翻阅相关的书籍和资料,进行详细的灯饰行业市场调查,了解该行业的产品种类和相应企业情况。参考其他电子商务类系统,根据实际业务需求进行各个功能的设计开发,最终完成系统开发。三、指导教师意见:8 .对“开题报告”的评语:2.对学生前期工作情况的评价(包括确定的研究方法、手段是否合理等方面):指导教师:年月曰目录基于ANDROID贪吃蛇游戏开发-4-摘要5一 .弓I言-6-近年来智能手机的迅猛发展,国内手机系统的开发平台巳经将ANDROID放在最受关-6-注的中心位置,目前我国单机版手游仍占手机游戏的上峰,在市场价额中网络游戏占有-6-率较低,所以通过整体的行业分析统计来着,中国的手机游戏所处于高速发展时期-6-二 .研究现状-6-通过网络调查分析,截止到2011年三月份,我国手游市场的发展规模为9亿多-6-拥有1.42亿的手游用户数量,可见它的增长速度之快。究其原因我认为主要有以下几-6-方面:智能手机的销量大幅提商,手游终端体验者使用率成上尹趋势,手游市场的重视-6-主要有电信运营商和各大游戏开发厂商,提高手机游戏的市场推广率,使得我国手机游戏用户数据明暴提高此推断,安卓开发游戏的市场前景非常乐观,游戏市场同样需要质量稍高的游戏品,保证不种类的多元化的游戏产品,比如:网上体闲游戏、社交类游戏软件、动漫类游戏软件等等,我针对课题的研究开发,对游戏引拳的理解、游戏业务逻辑分析目设计实现等都有指导性作用,更对今后的ANDROID游戏开发起到定的帮助性。-6-随着手机巳经慢慢的成为我们每个人的主要消费品,智能手机在许多方面都为用户-6-提供消赛体验,比如:上网、视频、娱乐、学习、输入/输出设备等,通过前几年的调-6-查统计,手机业出现快速增长趋势。历年调查数据来看,2年智能手机的出售量的增长-6-率是3%,智能手机的渗透率为40%o相对个人电脑来看,个人电脑的使用巳进入成熟-6-阶段,未来的个人电脑业整体增高速度计划保持在05%上下。因此,对于近年来增长速-6-度极快的手相业来说,未来具年的手机将有替代个人电脑的势头。-6-智能手机操作系统中的ANDRon)系统巳经具有非常大的优势,ANDROn)采用基于-6-NUS的自由开放源代码的操作系统,主要用于便携设备,比如:平板、手机等等,通-6-过统计调查来看,ANDROID在2011年三月份的全球市场中第“次超越了塞班系统,成为-6-全球笫的排名-6-三、系统的可行性研究-6-3.1 经济上的可行性-7-3.2 技术上的可行性-7-谷歌公司研制开发的ANDRolD开放手机联盟,翻译成英文为“OPENHANDSETAUJANCE”,它采用软件叠层(SOFTWARESTACK)架构,主要分为三部分,底层LINUX内核只提供基本功能:其他的应用软件则由各公司自行开发,部分程序以JAVA编写-7-3.3 操作上的可行性-7-3.4 本章小结-7-四、需求设计-8-4.1 软件目标-8-4.2 功能需求-8-五、系统的总体设计-9-您撞墙了!开始-9-10-六、结语-15-毕业设计悄然结束,回味过程让我从起初的茫然,到逐渐理清思路进入状态,整个-15-过程无法用言语形容。面对困难时,我常常觉得无从下手,困难解决了,立刻感到裕然开朗,这一切的一切都离不开我的指导老师选题结束后,通过到图书馆、阅览室、书店等地方查找资料以及上网搜集相关信息,这些精确、完整的资料信息对设计的撰写起到一定作用,通过对资料的分类、理论、实际、例了、图片等内容的整理,列出提纲与指导老师进行沟通。通过这个毕业设计,使我对ANDROn)系统的开发有一个更好的了解,在实际操作中我针对AVA里的ANDROID应用系统开发有了更深入的研究和学习,为以后工作和学习积累了宝贵的经验。以上是我在本次毕业设计中的过程与体会,当然我知道我作的还是不够的,在以后的日子中,我还要再提高我的实际操作能力。-15-致谢-15-参考文献-16-基于Android贪吃蛇游戏开发摘要本课题是利用java语言在AndrOid平台上进行手机游戏的开发,由于本人知识的有限,以及客观条件的限制,本人打算开发一个单机版的游戏。本人在手机上玩过贪吃蛇的游戏,曾经为了和别人比赛,苦苦的玩了好多次,追求高分!后来得知这个小小的游戏是nokia当年很成功的一款手机游戏,许多人都玩过,也很喜欢。现在这款游戏的版本已经发展到第三版了,手机生产厂商继续开发这个游戏,看来这个游戏还是有很大的市场的。在游戏产业高速发展的今天,游戏的设计思想和理念也在不断变化。而随着智能手机终端的出现,更是为手机游戏提供了高速发展的平台。本章将对Android游戏的发展现状和前景进行分析,并介绍本文的研究内容和结构安排。关键词:android游戏发展平台一引言近年来智能手机的迅猛发展,国内手机系统的开发平台已经将Android放在最受关注的中心位置,目前我国单机版手游仍占手机游戏的上峰,在市场价额中网络游戏占有率较低,所以通过整体的行业分析统计来看,中国的手机游戏所处于高速发展时期。二.研究现状通过网络调查分析,截止到2011年三月份,我国手游市场的发展规模为9亿多拥有L42亿的手游用户数量,可见它的增长速度之快。究其原因我认为主要有以下几方面:智能手机的销量大幅提高,手游终端体验者使用率成上尹趋势,手游市场的重视主要有电信运营商和各大游戏开发厂商,提高手机游戏的市场推广率,使得我国手机游戏用户数据明暴提高此稚断,安卓开发游戏的市场前景非常乐观,游戏市场同样需要质量稍高的游戏品,保证不种类的多元化的游戏产品,比如:网上休闲游戏、社交类游戏软件、动漫类游戏软件等等,我针对课题的研究开发,对游戏引擎的理解、游戏业务逻辑分析目设计实现等都有指导性作用,更对今后的Android游戏开发起到定的帮助性。随着手机已经慢慢的成为我们每个人的主要消费品,智能手机在许多方面都为用户提供消费体验,比如:上网、视频、娱乐、学习、输入/输出设备等,通过前几年的调查统计,手机业出现快速增长趋势。历年调查数据来看,2年智能手机的出售量的增长率是3乐智能手机的渗透率为40%o相对个人电脑来看,个人电脑的使用已进入成熟阶段,未来的个人电脑业整体增高速度计划保持在05%上下。因此,对于近年来增长速度极快的手相业来说,未来具年的手机将有替代个人电脑的势头。智能手机操作系统中的Android系统已经具有非常大的优势,Android采用基于nus的自由开放源代码的操作系统,主要用于便携设备,比如:平板、手机等等,通过统计调查来看,AncIrOid在2011年三月份的全球市场中第“次超越了塞班系统,成为全球第的排名三、系统的可行性研究目前我国手机市场上最常用的操作系统有:WindoWSmobile,Symbian,以及谷歌的Android操作系统,其中Android系统在开发源代码优势上的发展前景很乐系,因此我选择了基于AndrOid的手机贪食蛇游戏。3.1 经济上的可行性谷歌公司经过多年历练投资上达数亿美元开发的智能手机系统就是Android系统它是基于LinUX的内核的操作系统,并于2007年11月5日发布。伴随基于安卓的智能手机终端设备的生产以及各大终端系统的诞生,安卓系统得到了各大厂商及用户的认可,在手机系统这个平台上成为了公认的焦点。对于基于开放的系统,无论是企业还是个人都能用来表达自己的创意及想法。3.2 技术上的可行性谷歌公司研制开发的Android开放手机联盟,翻译成英文为“OpenHandSetAllianCe”,它采用软件叠层(softwareStaCk)架构,主要分为三部分,底层Linux内核只提供基本功能:其他的应用软件则由各公司自行开发,部分程序以Java编写3.3 操作上的可行性基于AndJrOid的手机贪食蛇游戏采用AndJrOid框架结构,通过eclipse来安装长缪目默技东学眠droid相关的插件,在Android终端使用Android模擞器,模器可以完全实现手机的功能,达到熟悉系统的目的综上所述,基于Android的手粗贪食蛇戏在开发上是可有的,元论是技术连是经济乃至于操作上,因此,我选择本系统作为毕设订的课题来研究。3.4 本章小结本章详细探究了游戏的需求分析,完成了游戏的内容设计、美工需求和功能需求三个方面的内容。四、需求设计软件生存周期中的重要环节是需求分析,这也在软件开发中起到至关重要的作用,软件的需求分析是将软件开发逐步细化,将所有计划中确定的功能落实到详细设计中,需求分析也是软件设计的一个基础,如果在此环节出现错误,解决起来需要的时间会比到设计编码时少上几倍,所以在大型系统开发中,需求分析显得相当重要,系统的开发人员会对用户提出的需求及现实的环境进行详细调查了解。4.1 软件目标本系统是基于Android的手机贪食蛇游戏系统,系统实现达到以下目标本系统实现面友好、操作方便灵活、体现个性化操作、达到人机交互模式。实现贪食蛇游戏的基本操作系统实现维护性和可操作性。4.2 功能需求功能雷求主要为程庠员定义系统完成的基本软件功能,开发人员可以通过功能需求文档了解系统的业务雷求,帮助开发人员切实准确的完成任务。对于基于Android的手机贪食蛇游戏的输入、接受等功能进行详细的分析调研,总结得出用户需求信息。4.3 系统界面需求基于android的手粗贪食蛇戏的面要求有局合理、能清晰、颜色搭配美观、实现统一的元素标准及主题慧想,可以充分的反应游戏核心技术。界开始五、系统的总体设计您撞墙了!I1IIlpublicSnakeView(Contextcontext,AttributeSetattrs)super(context,attrs);Bitmapmap=BitmapFactory.JecodeResource(getResources()zR.drawable.redstar);cellHeight=map.getHeight();cellWidth=map.getWidth();/TODOAuto-generatedconstructorstubpublicvoidstart(Handlerhandler)(this.handler=handler;drawWall();initSnake();initApple();isRunning=true;direction=2;sumApples=O;newMytread().start();* 设置Snake对应单元格的图片* /publicvoiddrawSnake()(this.setcell(snake.get(0).getX(),snake.get(0).getY(),R.drawable.redstar);for(inti=l;i<snake.size();i+)(this.setcell(snake.get(i).getX(),snake.get(i).getY(),R.drawable.greenstar);)* 更新蛇的坐标* /publicvoidUpdateSnake()(booleaneatApple=false;Pointp=newPoint(C),0);/蛇的头新结点switch(direction)(case1:p.setX(snake.get(O).getX()-1);p.setY(snake.get(O).getY();break;case 2:p.setX(snake.get(O).getX()+1);p.setY(snake.get(O).getY();break;case 3:p.setX(snake.get(O).getX();p.setY(snake.get(O).getY()-1);break;case 4:p.setX(snake.get(O).getX();p.setY(snake.get(O).getY()+1);break;/判断新的点有没有苹果for(Pointpoint:apples)(if(point.getX()=p.getX()&&point.getY()=p.getY()(SumApples+;apples.remove(point);intx=(int)(Math.random()*(rOWNUm-2)+1;/行数inty=(int)(Math.random()*(ColNUm-2)+1;/歹U数apples.add(newPoint(x,y);this.setcell(xzy,R.drawable.yellowstar);eatApple=true;break;)/判断是否撞墙if(p.getX()=0p.getX()=rowNum-lp.getY()=0p.getY()=coINum-1)(isRunning=false;Messagemessage=newMessage();message.Obj="您撞墙了!”;handler.SendMessage(message);)snake.add(0,p);this.setCell(snake.get(snake.size()-1).getX(),snake.get(snake.size()-1).getY(),0);if(eatApple=false)snake.remove(snake.size()-1);)* 初始化苹果* /publicvoidinitApple()(for(Pointp:apples)(setCell(p.getX(),p.getY(),0);)apples.clear();for(inti=0;i<2;i+)intx=(int)(Math,random()*(rowNum-2)+1;/行数inty=(int)(Math.random()*(CQlNum-2)+1;/歹J数apples.add(newPoint(xzy);this.setcell(xzy,R.drawable.yellowstar);)* 初始化蛇* /publicvoidinitSnake()(for(inti=l;i<snake.size();i+)(setCell(snake.get(i).getX(),snake.get(i).getY()z0);snake.clear();snake. add(new snake. add(new snake. add(new snake. add(newPoint(5z2);Point (4z2);Point (3z2);Point (2z2);this.setCell(snake.get(0).getX(),snake.get(0).getY(),R.drawable.redstar);for(inti=l;i<snake.size();i+)(this.setCell(snake.get(i).getX(),snake.get(i).getY(),R.drawable.greenstar);publicvoiddrawWall()(for(inti=0;i<colNum;i+)(this.setCell(0zizR.drawable.greenstar);this.setCell(rowNum-lzizR.drawable.greenstar);)for(inti=0;i<rowNum;i+)(this.setCell(izOzR.drawable.greenstar);this.setCell(izcolNum-lzR.drawable.greenstar);OverrideprotectedvoidonDraw(Canvascanvas)/TODOAuto-generatedmethodstubPaintpaint=newPaint();for(inti=0;i<rowNum;i+)(for(intj=0;j<colNum;j+÷)(if(cellsij!=0)(Bitmapbitmap=BitmapFactory.decodeResource(getResources(),cellsij);CanVaS.drawBitmap(bitmap,j*cellWidth,i*cellHeight,Paint);if(sumApples>0)(paint.SetTextSize(50);canvas.drawText(String.valuef(sumApples)zwidth/2zheight/2,paint);super.onDraw(canvas);©OverridepublicbooleanOnTouchEvent(MotionEventevent)/TODOAuto-generatedmethodstubintX=(int)event.getX();inty=(int)event.getY();if(direction=2direction=l)(intheadX=snake.get(O).getY()*cellWidth;if(x>headX)direction=4;elsedirection=3;else(intheadY=snake.get(0).getX()*cellHeight;if(y<headY)direction=l;elsedirection=2;*Pointp=newPoint(x,y);points.add(p);this.invalidate();returnsuper.OnTouchEvent(event);OverrideprotectedvoidOnSizeChanged(intwzinthzintoldwzintoldh)/TODOAuto-generatedmethodstubwidth=w;height=h;rowNum=h/cellHeight;colNum=w/cellWidth;cells=newintrowNumcolNum;super.OnSizeChanged(wzhzoldwzoldh);/*设置单元格的值*/publicvoidsetCell(intxzintyzintvalue)cellsxy=value;六、结语毕业设计悄然结束,回味过程让我从起初的茫然,到逐渐理清思路进入状态,整个过程无法用言语形容。面对困难时,我常常觉得无从下手,困难解决了,立刻感到豁然开朗,这一切的一切都离不开我的指导老师选题结束后,通过到图书馆、阅览室、书店等地方查找资料以及上网搜集相关信息,这些精确、完整的资料信息对设计的撰写起到一定作用,通过对资料的分类、理论、实际、例了、图片等内容的整理,列出提纲与指导老师进行沟通。通过这个毕业设计,使我对android系统的开发有一个更好的了解,在实际操作中我针对ava里的android应用系统开发有了更深入的研究和学习,为以后工作和学习积累了宝贵的经验。以上是我在本次毕业设计中的过程与体会,当然我知道我作的还是不够的,在以后的日子中,我还要再提高我的实际操作能力。致谢感谢老师在项目中对我的指导,使我受益匪浅,在老师的大力帮助下终于克服了重重地难关,顺利的完成了这次设计。我所学到的不仅仅是知识,也有对生活的态度,种积极向上、不断进取、一丝不苟的生活态度。感谢我系各位老师对该项目的大力支持。各位同学对我的帮助,对我在该项目中遇到的很多问题给予了很大的帮助在本次毕业设计的开发过程中,我得到了指导老师的技术指导与新浪支持。在这里我要特别感谢我的指导老师对我的的大力帮助。我的指导老师非常悉心指导我和大力的支持我,在系统开发的架构总体结构还有功能上都给子了我很大的帮助,与此同时,特给我们提供这么好这么安静的环境,而且对我在编程开发设计的过程中很多细节上的工作进行了耐心给力的教导,对于现在的我能顺利完成我的毕业设计是起到了决定性的作用,通过开2本软件,我毂全面的学提了AnelROid基本知识和编程技巧,并在开发过程生我的jave开发能力得到了进步提高。参考文献1贺飞.智能手机操作系统在全球各地区份额调查报告OL.http:/mobile,2蔡灵,李方庭,沈哲彦等.2012-2016年中国手机游戏市场投资分析及前景预测报告C.中投顾问,2012.93安卓软件游戏下载-豌豆英:http:/wv4Exupery.S,吴群芳译.小王子M.西苑出版社,2004.85苏志同,石绍坤.手机游戏开发架构的研究J.计算机工程与设计.2010,(7)6罗震.Android平台环境下应用程序架构的设计与实现D.华中科技大学,20097郭宏志.Android应用开发详解国.电子工业出版社,2010.68杨鲁新.可视化游戏编程技术M.中国水利水电出版社,20109王向辉,张国印,赖明珠.Android应用程序开发M.清华大学出版社,2012.510周巍.Android平台下基于SQLite数据库的手机游戏设计与研究D.昆明理工大学,2011IljSrinivasanDesika.软件测试原理与实践M.机械工业出版社,2009