学生课程数据库的设计与实现及网络棋牌游戏大厅的设计与实现_第1页
学生课程数据库的设计与实现及网络棋牌游戏大厅的设计与实现_第2页
学生课程数据库的设计与实现及网络棋牌游戏大厅的设计与实现_第3页
学生课程数据库的设计与实现及网络棋牌游戏大厅的设计与实现_第4页
学生课程数据库的设计与实现及网络棋牌游戏大厅的设计与实现_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

第1章绪论1.1课题研究背景和意义棋牌文化在中国已经有几百年的历史,大家在工作之余,晚饭之后便会三五成群开始棋牌对弈。棋牌对于年龄、时间以及地点的要求非常低,这使得其成为中国社会最常见的娱乐形式。随着社会经济的发展,网络信息技术的日益完善提高,人们对于日常休闲娱乐需求与日俱增,在学习工作之余,大家总会在网络上选择一些游戏作为休闲娱乐,放松身心的载体。因此网络棋牌游戏以其方便快捷、群众基础广泛,简单易学,单局游戏时间较短等特点,逐渐被大家推崇和喜爱。其中网络棋牌游戏登陆和大厅部分作为与用户交互最直接的一部分,如何能够吸引用户,顺利引导其进入游戏显得尤为重要。作为运营的商业项目,由于用户量将和效益直接相关而显得至关重要。只有用户数量庞大,项目有收益才能称为合格的项目。无论是游戏本身、登陆界面或者是游戏大厅一切都应该精益求精,力求吸引住每一位客户,争取使得用户帮助宣传。因此美观的界面、便捷的操作,作为网络棋牌游戏大厅部分最不可忽视部分,对于吸引用户、增加用户量、减少用户流失有重要的意义。1.2课题现状与发展趋势目前我国的网络游戏主要包含2大类,一种是我们要研究的传统线上棋牌休闲类游戏,而另一种是以动作/回合角色扮演为代表的网络RPG游戏。现在我们重点分析棋牌休闲类游戏。网络游戏本身就是一个投入较低、回报巨大的行业,而且棋牌游戏在中国有着扎实的群众基础,这使其成为了中国网络市场内最赚钱、最具竞争力的的游戏类型之一,,从最早的联众、边锋到JJ斗地主、新锐棋牌游戏平台快乐之都等,越来越多的成熟棋牌游戏平台出现在人们的视野中。由以上几点不难看出,经过最近几年的发展,国内的在线棋牌游戏很早之前就摆脱了单调无趣的雏形,现在出现在大家视野中的棋牌娱乐平台界面精美,后台辅助系统功能完善、游戏精彩鲜活。这些都预示着网络棋牌游戏必然将在网络游戏市场内大放异彩、经久不衰。1.3论文组织结构本文讲述的是网络棋牌游戏大厅的设计与实现。第一章前言,本章主要介绍了此系统的背景与意义以及当前研究的情况与未来发展趋势;第二章讲述的是本系统开发过程中所需要的基本语言与技术及其各自的特点;第三章是对整个系统的需求分析;第四章讲述了对于此游戏系统的设计与实现;第五章是对本系统内各模块的整体测试;第六章是对于课题的总结以及对于下一步工作的展望。还包括对引用文献的说明等。

第2章C++编程语言与轻量级脚本语言lua语言概述第2章C++编程语言与轻量级脚本语言lua语言概述2.1C++语言概述C++语言是一种使用频率非常广泛的计算机编程语言。它是一种静态数据类型检查的并且支持多重编程范式的通用的程序设计语言。它提供了对象、类,以及继承的概念,奠定了面向对象语言的基础[[]陈维兴.C++面向对象程序设计教程.第二版.北京:清华大学出版社,2004:10-20.]。C++不仅支持过程化程序设计、数据抽象、面向对象的程序设计[]陈维兴.C++面向对象程序设计教程.第二版.北京:清华大学出版社,2004:10-C++语言优点分析几乎所有的计算环境中对于C++的使用都非常普及,无论是个人电脑或者Unix工作站以及大型计算机中对于C++的使用都很频繁。众所周知,C++是建立在C语言的基础之上的,C语言的成功无形中对于C++的普及产生了巨大的帮助,然而C++的流行却远不仅仅是这一个原因。C++有许多优点:C++语言的适用程序范围极其广泛。它几乎可以用于所有的应用程序,无论是文字处理的应用程序或者是科学应用程序全部可以由其完成。C++继承了C语言中的高效性,并与面向对象编程方式的功能进行了集成。③C++语言在其标准库中为开发者提供了大量方便快捷的功能。2.1.2C++语言缺点分析虽然C++语言拥有普及范围广泛、高效等众多的优势,然而在具体游戏应用的开发和使用中还是存在部分的不足之处:对于在线运营的网络游戏应用程序来说,日常地更新和维护显得至关重要,如果游戏全部使用C++进行开发,更新维护时便需要更新执行文件,这对于频繁的更新来说显得过于复杂繁重。C++语言编译过程中所需时间长,使得项目开发周期无形中便会变长。C++学习难度比较大,对于刚刚接触C++的技术人员很难立刻进行项目的研发工作。2.2lua语言特点概述Lua是一个小巧的脚本语言。作者是巴西人。该语言的设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能[[]百度百科Lua./view/416116.htm?fr=aladdin.]。Lua[[][]百度百科Lua./view/416116.htm?fr=aladdin.[]RobertoIerusalimschy.ProgramminginLua.周惟迪译.SecondEdition.北京:电子工业出版社,2008:10-lua语言优点分析Lua作为一种小巧的轻量级脚本语言,相对于传统的编程语言来说具有很多优势:轻量级:Lua[[]JungK[]JungK.BeginningLuaProgramming.JohnWiley&Sons2007.可扩展:Lua语言并不像其它许多庞大且全面的语言一样,包含很多的功能,例如图形界面、网络通讯等。但是Lua却提供了非常方便使用的扩展接口和机制:由其C或C++的宿主语言提供这些拓展功能。Lua语言正是以其轻便简洁、在大型项目中易于理解和维护等特点,使其使用率在逐年上升,成为最受欢迎的语言之一。2.2.2lua语言缺点分析Lua语言的有点是足够小和简洁,然而它最大的不足之处也正是这几个字。虽然Lua语言简洁,却依然存在一些不足之处:Lua为了追求简洁,语言自身没有带有过多的库,使得在编程过程中需要使用的库需要第三方提供。Lua语言不支持多线程,使得程序在同一时间内无法运行多个任务。Lua语言内没有continue关键字,导致一些本来简单的循环将会变得异常难以书写。Lua与C语言的接口风格。相对于Python和Perl使用的接口,Lua的接口风格和汇编语言更加接近,对于刚刚接触Lua语言的人来说,使用起来会觉得不习惯。2.3C++中嵌入lua语言技术概述实际工程开发过程中,我们使用tolua++将C++与Lua进行绑定,使其进行交互[[][]邓正阳,陈和平.动态脚本语言Lua与C++交互方法的设计与实现.计算机系统应用,2010,19(5)tolua++是一种第三方的软件包,可以为Lua提供面向对象的特性,这样我们就可以使用Lua来编写使用C++语言库的脚本文件[[]Killwd.tolua++简介./killwd/article/details/1423923.]。通过编写干净整洁的C++头文件,tolua++会自动的将代码转化为可以供Lua访问C++接口[]Killwd.tolua++简介./killwd/article/details/1423923.[]魏江平.Lua脚本语言在游戏引擎中的应用分析[J].微型电脑应用,2008,24(4):22-232.4本章小结本章介绍了本系统开发过程的所需要的技术,简单分析了C++和Lua语言在本系统中的优缺点,最后介绍了C++与Lua交互所需要的tolua++技术,以及二者进行交互后的在系统开发、理解和维护中的优势。第3章系统分析

第3章系统分析第3章系统分析在以前,棋牌游戏都是大家茶余饭后三五成群聚在一起的消磨时间的方式,而如今随着信息技术的飞速发展,网络已经成为人们生活中不可或缺的重要组成部分。所以为了顺应时代的发展,棋牌游戏也需要走进网络,这样才能更方便的走进人们的生活。网络棋牌游戏的开发主要是为了丰富人们的日常生活,缩短了大家娱乐时存在的时间和空间上的距离。3.1总体需求分析网络棋牌游戏登陆界面和大厅是用户进入游戏必须经过的中间过程,首先用户必须先通过登陆界面进行账号密码的匹配验证,只有验证成功以后才能进入到游戏大厅界面,游戏大厅内的布局尤为重要,不仅要求简单明了,还需要展示尽可能多的有许多游戏和系统的信息给用户。游戏登陆窗口以及大厅界面是系统内最直接与用户进行交互的部分。随着信息的发展与软件应用的普及,大家对于软件的要求也在逐步提高,客户并不会仅仅考虑一款软件的实用性,对于软件界面给人的视觉感受,客户要求也在提高。使得软件并不仅仅有操作上的便捷,同时兼具视觉上的享受。任何一款软件如果失去了美观的界面,创新性、操作感即使再好也难以得到用户的垂青。任何一款软件的成功都是在界面、操作所有方面都具有吸引力,因此界面[[]凌尘.主流游戏UI布局分析研究./s/blog_6e5ced6e0100qk2a.html.]设计一定会占据[]凌尘.主流游戏UI布局分析研究./s/blog_6e5ced6e0100qk2a.html.本系统设计重点:美观:如果把软件和人做比较,那么软件的界面便相当于人的外表与气质,因此软件界面的美观程度将直接影响用户对于软件的第一印象,美观的界面对于减少客户流失起到至关重要的作用。布局合理:软件所有功能菜单的布局,按键的位置大小,都必须严格考虑其是否符合多数用户的操作习惯。如果功能按键布置不合理将直接影响用户的操作体验,使用户产生厌烦心理。操作简洁:作为棋牌游戏的登陆与大厅部分本身并不需要太多的操作[[]麦克沙夫瑞.游戏编程全接触GameCodingComplete,冯兆麟译.北京:人民邮电出版社,2006],唯一的要求就是操作简洁,系统各部分之间的链接恰当,毕竟作为棋牌游戏,需要面向的是所有年龄段的用户,对于一些上了年纪的[]麦克沙夫瑞.游戏编程全接触GameCodingComplete,冯兆麟译.北京:人民邮电出版社,20063.2系统性能分析网络棋牌游戏为了丰富用户的生活、吸引用户便需要在游戏本身外引入很多辅助的系统,例如包含有经验等级、昵称、头像的人物信息系统等等。因此根据工作流程和实际的需求,把本课题分为以下几个模块:游戏登陆模块:用户输入正确的账号密码与后台数据进行比较,账号密码匹配正确则进入游戏大厅界面,否则系统提示“密码错误”等提示。大厅用户信息显示模块:此模块用于展示用户的头像和等级,另外包含有背包、人物信息、好友和任务等按钮,点击相应按钮弹出对应的窗口并显示相关信息。大厅热门游戏模块:大厅热门游戏模块主要用于运营时的宣传,运营商可以把刚刚上线或者玩家较多的游戏放在此处,给用户一个快速进入游戏的渠道,简化用户进入游戏的流程。大厅普通游戏以及房间模块:此模块是用户进入游戏的通道,进入游戏大厅时,用户可以在此模块选择自己感兴趣的游戏,点击游戏之后,游戏选择界面变为房间选择界面,选择不同房间进入不同的牌桌开始游戏。大厅辅助系统模块:此模块主要提供给用户一些后台网站的接口,充值等功能都是在后台网站内进行,点击相应功能,会自动打开该后台网站。大厅通知公告模块:此模块展示游戏相关的最新公告,使用户快速了解最新的优惠活动和及时参加系统组织的限时比赛等等。总体用例图如图3-1所示。图3-1总体用例图3.3可行性分析本系统是为了解决传统棋牌游戏过程中玩家时间和空间难以统一的问题。本文接下来将从经济可行性和技术可行性两方面对系统进行分析。3.3.1经济可行性1.支出(1)基本投资:硬件:PC机软件:WindowsXP/7系统、Sqlyog、Scite;(2)其他一次性支出:主要为软件设计和开发费用,软件开发的过程中,投入软件设计和开发费用包括:购买书籍资金、正版VC++6.0安装盘、需求分析费用。(3)经常性的支出:主要是服务器费用和软件后期维护费用。软件开发完成并投入后期使用时,对软件产品的后期维护产生的费用。2.效益网络棋牌游戏的收益一般都非常可观,一般来说,只要达到1000左右的用户量,项目本身便不会亏本。对于一些推广程度较高,用户量很大的城市来说,一款网络棋牌游戏月入百万千万并非难事。3.3.2技术可行性本系统的底层全部由C++开发,包括有网络部分、可供调用的接口以及前端界面布局规则等等,然后将C++函数接口暴露给lua,前端通过规定好的规则用.cs文件剪切图片并且进行界面布局,并且全部使用易于学习和使用的脚本语言lua语言进行开发。可以大幅度缩短工程周期,使得系统更加灵活简洁,并且利于后期维护。3.4本章小结本章首先进行了系统的总体需求分析,确定了需求重点,然后对本系统的性能进行了分析,最后又从经济可行性和技术可行性两方面分析了项目的可行性。第4章系统设计与实现

第4章系统设计与实现4.1系统功能模块设计由于作者仅对该游戏系统部分功能模块进行设计与实现,即六个功能模块:游戏登陆模块、大厅用户信息显示模块、大厅热门游戏模块、大厅普通游戏房间模块、大厅辅助系统模块、大厅通知公告模块。各个功能模块之间没有必要的联系,它们之间完全可以独立开来。4.1.1游戏登陆模块模块概要设计:游戏登录模块包括:用户名和密码的录入,用户名和密码的获取,用户名和密码的匹配,错误信息提示。(1)用户名和密码的录入:通过编辑框控件输入用户名和密码。(2)用户名和密码的获取:将控件中的值传递给控件变量。(3)用户名和密码的匹配:将获取到的用户名和密码到数据库中去匹配,核对。(4)错误信息提示:根据用户名密码匹配结果和检查控件是否为空给出不同的错误提示信息。当用户名密码不匹配时弹出对话框显示用密码输入错误;当控件中内容为空时提示用户名/密码不能为空。系统登录功能如图4-1所示。2.设计流程和思想:用户登录模块,首先用户输入用户名和密码,验证用户名或者密码是否为空,如果用户名或密码为空,则提示为空并等待用户填写完整;然后再判断用户名和密码是否与数据库中的记录相匹配。若不匹配则清空控件等待用户再次输入;若匹配成功则进入游戏大厅界面。

图4-1用户登录功能图4.1.2大厅用户信息显示模块1.模块概要设计:用户信息显示模块包括:用户头像信息,用户等级信息,个人信息窗口,好友以及任务窗口。用户头像信息:主要用于显示用户系统默认或者的自己上传的头像。用户等级信息:通过经验值进行等级的判断,然后显示登记信息。个人信息窗口:展示个人的所有信息,经验,账户金币,还包括密码的修改等。好友窗口:展示用户在系统内添加的好友。任务窗口:展示用户当前正在进行或者未完成的任务。信息显示模块功能如图4-2所示。设计流程和思想:用户信息显示模块,当用户登陆成功后,跳转到大厅,系统自动获取用户等级、经验、头像和账户金币等信息,头像、等级信息以及账号金币会直接显示在游戏大厅界面,同时头像旁边会有人物信息、背包、好友和任务按钮,点击之后会弹出相应窗口。图4-2信息显示模块功能图4.1.3大厅热门游戏模块1.模块概要设计:热门游戏模块主要提供进入热门游戏的通道,可以缩短查找游戏的的过程。2.设计流程和思想:考虑到任何游戏平台都会存在需要重点推出的游戏或者用户量最多可以带来最大收益的游戏类别,本模块主要提供热门游戏的按钮,使得用户在游戏大厅内可以一目了然的了解当前最火热的游戏。4.1.4大厅普通游戏房间模块1.模块概要设计:此模块是整个游戏系统的核心,系统捏所有种类的游戏以及每个游戏内的房间信息都在这里显示,供用户选择。2.设计流程和思想:本模块分为两层并且包含“返回”、“下一页”和“上一页”三个按钮,第一层为游戏层,游戏层会直接显示在游戏大厅内供用户选择,此时“返回”按钮状态为不可点击,点击具体游戏后会进入下一层:下一层为房间层,这一层显示时会覆盖掉游戏层,同时“返回”按钮变为可点击状态,此时点击房间会直接进入游戏,点击“返回”按钮则返回游戏层。此外,每页显示的游戏和房间的最大个数为9个,当游戏或者房间个数超过9个的时候,会自动分为两页,同时“下一页”按钮变为可点击状态,进入下一页后,“上一页”按钮变为可点击状态,点击则进入上一页。4.1.5大厅辅助系统模块1.模块设计概要:此模块主要提供几个按钮,包括游戏大厅、比赛详情、我要充值、元宝换金币和道具商城。点击之后会进入相应的辅助系统。游戏大厅:即大厅初始界面,展示游戏信息。比赛详情:用来展示系统不定期举行的各类比赛。我要充值:此功能由系统后台网站提供,游戏客户端仅仅提供网站链接。元宝换金币:此功能由系统后台网站提供,游戏客户端仅仅提供网站链接。道具商城:此功能由系统后台网站提供,游戏客户端仅仅提供网站链接。2.设计流程和思想:本模块仅仅是在大厅界面提供几个按钮,点击游戏大厅后,界面会回到游戏列表;点击比赛详情,界面会显示系统内最新的比赛信息;点击我要充值、元宝换金币、道具商城按钮,则会自动打开游戏后台网站。4.1.6大厅通知公告模块1.模块设计概要:此模块主要用于向用户展示游戏平台的相关通知及、常维护的公告以及活动信息,使用户第一时间掌握游戏平台动态。2.设计流程和思想:通知公告部分调用C++底层封装好的函数,打开后台网站链接,显示网站内通知公告内容;最新活动则是通过定期更改图片来展示给用户。4.2数据库设计本课题在整体系统中仅仅占一部分,针对本系统的用户登录部分,使用SQLyog进行数据库搭建。用户账户信息表主要包括账号和密码,表的基本情况如表4-1所示。表4-1用户登录表字段名描述数据类型数据长度NULLPrimarykeyAccount用户账号Char20NYPassword用户密码Char20NN表的具体实现情况如图4-3。图4-3账户信息数据设计图4.3系统的实现本系统底层函数全部由C++封装,在具体开发时分为两部分:界面布局设计,功能的代码实现。具体开发步骤如流程图4-4所示。4.3.1界面布局设计本系统界面布局规则由c++[[]StanleyB[]StanleyB.LippmanInsidetheC++ObjectModel[M].1996.首先,美术工作人员提供提供设计好的大厅整体效果拆分图,如图4-5所示。然后通过.cs文件将完整大图中的所有资源按照像素位置拆分为一个个独立的部分。以“返回”按钮为例,代码实现如下: Skin="Lobby_Go_Back"//返回 { Texture="ui/boke/skin/lobby1.opf" Face="Button:Enabled" { Position=261848 Size=6827 Border=0 } Face="Button:Highlighted" { Position=331848 Size=6827 Border=0 } Face="Button:Pressed" { Position=401848 Size=6827 Border=0 } Face="Button:Disabled" { Position=471848 Size=6827 Border=0 } }具体代码含义解释:Skin="Lobby_Go_Back":是对于整个“返回”按钮的定义,使得在进行布局的时候可以轻松找到该按钮。Texture="ui/boke/skin/lobby1.opf":是找到所需要的在目录为“ui/boke/skin”内的名字为“lobby1”图片资源。Face="Button:xxxx":这是按钮不同状态的图片定义,"Button:Enabled"为按钮正常情况的状态图片,"Button:Highlighted"为鼠标移动到该按钮上面时的状态图片,Face="Button:Pressed"为点击按钮之后的状态图片,"Button:Disabled"为按钮不可点击时的状态图片。Face内Position为拆分图片左上角的X轴和Y轴像素位置,Size为剪切图片资源的长和宽的像素大小,Border则表示去掉图片的边缘部分。当所有图片资源全部剪切分割完毕之后,便开始通过.cs文件进行界面的整体布局,以“返回”按钮为例,代码实现如下:UI { LoadSkin="ui/boke/skin/lobby_skin" Layout { Frame="LobbyFrame" { Left=0.0000000.000000 Right=1.0000000.000000 Top=0.0000000.000000 Bottom=1.0000000.000000 Alpha=1.000000 Skin="operate" Color=1.0000001.0000001.000000 Font="Global15" Shadow=false Alignment="Center" Resizeable=false Moveable=false ReceivesEvents=true ReceivesBound=false Layer=0 Frame="GameFrame" { Left=0.0241.000000 Right=0.0781.000000 Top=0.0144.000000 Bottom=0.0617.000000 Alpha=1.000000 ReceivesEvents=true Layer=0 Button="Lobby_Go_BackButton"//返回 { Left=0.00.000000 Right=0.068.000000 Top=0.04.000000 Bottom=0.031.000000 Alpha=1.000000 Skin="Lobby_Go_Back" State="Enabled" AnimationTime=0.000000 ReceivesEvents=true Layer=0 } } } } }主要代码含义解释:LoadSkin="ui/boke/skin/lobby_skin":载入路径为“ui/boke/skin”的名为lobby_skin.cs的配置文件。Left、Right、Top、Bottom:内部两个参数分别表示该Frame或者Button相对于父亲模块的位置和相对位移。其中位置和位移可以使用比例或者像素两种表示方法。Alpha:表示该对象初始状态是否显示,参数为1表示可见,参数为0表示隐藏。Skin:表示该对象使用的图片资源在图片分割配置文件内的名称。Color:表示该图片的颜色,可以通过参数进行控制。Font:表示该对象内的字体及大小。Alignment:表示该对象的对齐方式,参数可以为“Left”、“Right”和“Center”。Moveable:表示该对象是否可以被鼠标拖动,参数为“True”或“False”。ReceivesEvents:表示该对象是否允许接受鼠标点击,参数为“True”或“False”。Layer:表示该对象所处的层级,参数较大的显示在前面。Button="Lobby_Go_BackButton":表示该对象的属性为Button按钮。State:表示该对象的初始状态。AnimationTime:表示该对象鼠标点击的响应时间。图4-4开发流程图图4-5大厅整体效果拆分图4.3.2主要代码实现页面布局完成之后,便需要编写代码进行具体功能的实现。下面介绍一些大厅内部功能的主要代码实现。1.大厅内按钮响应首先在初始化内通过调用封装好的函数找到之前已经完成的布局文件,代码如下:locallayoutdir=base.ClientHelp.GetUILayoutDir();

_ui:LoadLayout(layoutdir.."Lobby_Layout");之后再通过代码找到页面布局的每一部分,从而通过代码控制该部分的功能以及是否显示,以返回按钮代码为例:GoBackBt=_ui:FindButton(mainframe,"Lobby_Go_BackButton");//首先在布局文件中中找到“返回”按钮GoBackBt

if(GoBackBt~=nil)then

ui.setListener(GoBackBt,ui.actions.key,OnGoBackButton);

end//给GoBackBt添加响应函数OnGoBackButton函数之后在OnGoBackButton函数内添加具体我们想实现的功能,这样点击“返回”按钮之后便会响应我们编辑好的OnGoBackButton函数内的事件。热门游戏普通游戏区分在游戏表内每个普通游戏和热门游戏都会有一个RootID,其中所有普通游戏的RootID的值都是小于10000,而热门游戏的值则大于10000,这样遍历游戏的时候便可以通过比较RootID的值将普通游戏和热门游戏分开。代码实现如下:for_,_enteryinbase.ipairs(gameshowlist)do

if(_entery:GetRootID()>=10000)then

base.table.insert(hotgamelist,_entery);

else

base.table.insert(normalgamelist,_entery);

end

end游戏及房间代码设计游戏大厅内游戏和房间设计相同,这里以游戏为例。游戏每个页面最多显9个,点击每个游戏进入相应的游戏房间。代码控制时需要设置每个游戏的位置,并且要给每个游戏添加按钮的属性。代码设计如下:fori=1,9do localbutton=_ui:AddButton(gametreeFrame,string.format("itme%d",i)); _ui:CopyUILayout(button,model_item); ui.setListener(button,ui.actions.key,OnItem(i)); button:SetAlpha(1.0); localindex=(i-1)%3; localindex_h=math.floor((i-1)/3); localregion=button:GetRegion(); localbottom=region:GetRelativeBottom().mRelative; region:SetLeft(region:GetRelativeLeft().mRelative,region:GetRelativeLeft().mAbsolute+index*(10+174)); region:SetRight(region:GetRelativeRight().mRelative,region:GetRelativeRight().mAbsolute+index*(10+174)); region:SetTop(region:GetRelativeTop().mRelative,region:GetRelativeTop().mAbsolute+index_h*(6+141)); region:SetBottom(region:GetRelativeBottom().mRelative,region:GetRelativeBottom().mAbsolute+index_h*(6+141)); localitemcontent={}; itemcontent.Item=button; table.insert(itemlist,itemcontent); end4.4本章小结本章主要首先对系统的各个功能模块进行了具体的设计,然后对所需要的数据库进行了分析设计,最后从系统界面布局和主要代码实现两个方面详细介绍了系统的具体实现过程。第5章系统测试第5章系统测试5.1系统功能测试黑盒测试也叫做功能测试,它是用来检测每个功能是否都能正常使用的一种测试方法[[]张海藩.软件工程导论(第5版)[M].北京:清华大学出版社,2008:[]张海藩.软件工程导论(第5版)[M].北京:清华大学出版社,2008:277-278.黑盒测试的时候测试人员主要从用户角度出发进行测试,目的是尽可能多的发现软件的外部错误。在已知软件产品功能的基础上进行下列检测:(1)检测软件的功能能否满足需求分析中提到的所有功能。(2)检测人机交互过程中数据库、后台网站访问是否存在问题。(3)检测程序初始化、运行结束和抛出异常等方面的错误等。本系统主要使用黑盒测试方法,对系统进行测试,对需求分析中系统所要实现的功能进行测试。5.1.1游戏登陆模块测试首先从登录页面开始如图5-1所示,输入用户名和密码,然后点击“登陆”按钮,如果录入的用户名或者密码不正确,就给出错误提示;如果正确,则进入游戏大厅界面,如图5-2所示。图5-1系统登录界面图5-2游戏大厅界面5.1.2大厅用户信息显示模块测试用户信息会直接显示在大厅内部,效果如图5-3所示。用户点击“个人资料”按钮显示个人信息窗口,效果如图5-4所示。图5-3信息显示界面效果图图5-4人物信息资料效果图5.1.3大厅热门游戏模块测试热门游戏模块仅仅提供几个按钮,用户点击不同游戏按钮进入不同的游戏。热门游戏模块效果如图5-5所示。点击之后进入房间界面效果如图5-6所示。图5-5热门游戏效果图图5-6游戏房间界面效果图5.1.4大厅普通游戏房间模块测试普通游戏模块会直接显示在游戏大厅内,点击游戏之后会跳转到房间模块,同时点击“下一页”按钮会显示下一页的游戏,在房间模块内,点击“返回”按钮,会跳转回游戏模块。游戏模块效果如图5-

温馨提示

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

评论

0/150

提交评论