毕业设计论文网络聊天与五子棋的设计与实现

上传人:cn****1 文档编号:561804257 上传时间:2022-08-07 格式:DOC 页数:43 大小:1.82MB
返回 下载 相关 举报
毕业设计论文网络聊天与五子棋的设计与实现_第1页
第1页 / 共43页
毕业设计论文网络聊天与五子棋的设计与实现_第2页
第2页 / 共43页
毕业设计论文网络聊天与五子棋的设计与实现_第3页
第3页 / 共43页
毕业设计论文网络聊天与五子棋的设计与实现_第4页
第4页 / 共43页
毕业设计论文网络聊天与五子棋的设计与实现_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《毕业设计论文网络聊天与五子棋的设计与实现》由会员分享,可在线阅读,更多相关《毕业设计论文网络聊天与五子棋的设计与实现(43页珍藏版)》请在金锄头文库上搜索。

1、分类号:TP311.1 U D C:D10621-408-(2008) 2478-0密 级:公 开 编 号:2004032成都信息工程学院学位论文网络聊天与五子棋的设计与实现论文作者姓名:申请学位专业:网络工程申请学位类别:工学学士指导教师姓名(职称):(副教授)论文提交日期:2007年05月24日网络聊天与五子棋的设计与实现摘 要20世纪末,随着计算机科学的发展,网络应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。个性化已逐渐成为当今网络应用的潮流。本论文提出一个集聊天和五子棋游戏于一体的网络应用系统的解决方案,并对其具体应用中的实现模块进行剖析。首先,此系统包括聊天和游戏两个模

2、块,聊天模块具有用户注册、加载好友、添加和删除好友、发送消息、接收消息、多人聊天等功能。游戏模块具有悔棋、战绩显示、人机对弈、人人对弈、聊天等功能。其次,此系统利用java语言进行开发的。系统使用Socket来完成服务端和客户端之间的通信,使用多线程技术支持多用户操作,使用SQL 2000对数据进行永久性存储。最后,此系统服务端通过定期的将数据库的数据存储到内存中的方式解决数据库并发访问的瓶颈问题。关键词:网络聊天;棋盘分割算法 ;设计模式;五子棋;Design and Realization of Gobang and network chatAbstractAt the end of 20

3、th century, with the development of computer science, Internet applications technology is widely used. This makes network users can enjoy more convenient and individual services. Personalization is the trend of todays Internet applications.This thesis proposes a solution of internet application syst

4、em that it sets chat、 gobang development in a body , and has dissected its realization module while employing specifically. Firstly, this system includes two modules of chat and game The chat module can possess functions like users registration,loading good friends,adding and deleting the good frien

5、ds,and sending and receiving message,chating with many people ,and so on. The game module can possess function like retracting a false move、showing the record of victory,man-machine match,man-man match,chating, and so on. Secondly, this system is developed by java language. This system uses Socket t

6、o finish communication between the server and the client, it uses multi-threading technology to support for multi-client, uses SQL 2000 to store permanent data. Finally, the systems server solves the problem of the bottleneck of database through regularly updated information into memory from the dat

7、abase.Key words:Network chat; Algorithm of partitioning chessboard;Design Patterns ;Gobang; 目 录论文总页数:38页1 引言11.1 设计背景11.2 设计意义11.3 设计方法11.4 本论文的目的及工作内容22 系统需求分析22.1业务用例分析22.2用例图42.2.1基本用例42.2.2游戏子用例42.2.3聊天子用例52.3用例简要说明52.4基本用例描述52.5扩展用例描述82.6后续用例描述93 系统分析报告93.1 系统类图93.1.1用户界面类103.1.2业务处理类103.1.3数据访

8、问类103.1.4权限管理类103.1.5异常处理类113.2 类的职责说明113.4类的静态结构123.5用例动态分析123.6用户界面原形134 系统设计报告164.1主要类详细设计图164.1.1 游戏模块类设计164.1.2 聊天模块类设计164.2游戏类的职责说明174.3聊天类的职责说明184.4 主要活动图:204.4.1游戏客户端与服务端活动图:204.4.2聊天服务端与客户端活动图214.5 主要状态图224.5.1 用户聊天状态图:224.5.2 用户游戏状态图234.6 服务端与客户端整体设计思想234.7 数据包设计235系统算法的详细分析报告255.1 数据库并发访问

9、瓶颈问题解决方案255.2棋盘分割算法的详细分析255.3 人机对弈的算法分析305.4 数据库表效率问题的解决方案325.5 防止灌水性注册的解决方案335.6 整体提升性能的解决方案335.7 用户下载好友和黑名单列表信息的实现说明335.8多人并发聊天的实现方式335.9 多用户并发下棋的实现方式345.10 用户移动好友,删除好友,增加好友的实现说明345.11 棋盘结构的构造说明345.12 游戏积分处理的实现说明345.13 悔棋功能的实现方式355.14音乐播放器的实现说明35第6章系统测试与性能分析356.1系统测试方案356.2系统测试环境和测试条件356.3 系统性能分析3

10、5结论36参考文献36致谢37声明381 引言1.1 设计背景 在互联网飞速发展及个人计算机普及的当今社会,各个领域都在充分利用着计算机资源。为了让处于不同地方的人能通过计算机进行实时通信和休闲愉悦,人们开发出基于互联网的网络游戏和聊天工具。滕讯的QQ就是行业中很好的聊天工具,但同时也是病毒的传播工具。许多软件开发公司,他们需要一个自己公司内部独立的通信工具进行通信和交流经验。现在的通信工具中只有滕讯QQ,MSN等几个通信工具。随着分布式系统领域的热化,分布式处理技术也成为处理异步程序的主要技术。故以此作为研究对象来对通信原理进行研究并对分布式处理技术及socket通信技术作比较。计算机硬件的

11、降低,使得计算机进入所有家庭。休闲愉悦更是计算机提供给人们一个休闲的渠道。网络游戏使得人们能感受到现实社会中感受不到的异度空间。1.2 设计意义现在只有几个通信工具,而且是面向大众的。虽然功能很强大,但是不适合作为企业内部交流信息的通信工具,而且成为网络病毒传播的一种工具。作为企业内部的通信工具应该具有操作简单,实时响应等特点。许多大型的网络游戏并不适合所有的计算机用户,并且大型的网络游戏需要安装。给那些只希望休闲愉悦的人带来很大的麻烦,所以通过浏览器和非安装程序作为游戏的客户端能很好的满足所有的计算机用户。网络中的五子棋游戏需要双人对弈,对于那些单用户或者练习技术的人来说需要找到一个人来和他

12、对弈。而对于那些人机对弈的五子棋程序又不能很好的满足人牛刀小试的愿望。所以通过此次毕业设计来开发一个实时通信和网络五子棋游戏结合一体的程序。通过此应用设计来学习和掌握游戏的开发过程和算法实现。1.3 设计方法根据通信原理结合JAVA的相关技术编写java版本的网络聊天程序。并用java语言来编写网络五子棋游戏。聊天程序采用C/S模式,游戏程序采用C/S和B/S模式。用SQL2000数据库来存储永久性的数据。游戏帐户注册的网页页面采用ASP语言进行设计。为防止用户的灌水性注册程序中采用验证码机制进行注册。服务器端程序采用Singleton模式并基于时间的回调定期的刷新数据库中的数据到内存中,通过

13、此方式解决数据库并发访问的瓶颈问题并加速业务响应速度。在数据库设计中根据表分割原理将频繁使用的数据放到一张表中,不经常用到的表放到另一张表中。游戏采用棋盘分割的算法进行输赢判断。1.4 本论文的目的及工作内容本论文主要详细介绍程序的构架和各功能的实现方式及程序中的主要算法。主要包括如下:(1)程序的构架设计;(2)服务端程序的设计;(3)客户端的程序设计;(4)客户端和服务端的通信机制;(5)程序中的多线程设计和实现;(6)数据库并发访问瓶颈的解决方案;(7)提升数据库性能的解决方案;(8)用户注册功能的实现方式; (9)用户下载好友信息的实现方式;(10)用户删除好友,添加好友,转变好友类型

14、的实现方式;(11)多人并发聊天的实现逻辑;(12)音乐播放器的实现说明;(13)处理多用户聊天消息的逻辑;(14)用户下载游戏数据的逻辑;(15)游戏规则维护的逻辑; (16)游戏积分处理逻辑;(17)处理多用户同时游戏的逻辑(18)人机对弈的算法; (19)输赢判断的算法;2 系统需求分析2.1业务用例分析系统应该具有如下功能:(1)注册帐户用户进入游戏前,界面中提供注册的标志。注册时采用验证码的机制防止恶意用户的灌水注册。(2)用户登录用户通过帐户登录后方可进入游戏。(3)游戏采用积分制度游戏的胜负都有一定的分值。系统根据用户的胜负状态给用户加载相应的分值,且此分值是累积的。用户通过自己

15、的合法帐户进入游戏后系统取得该帐户的所有信息包括注册信息,及历史游戏的积分。(4)用户可以自主选择桌面在游戏中用户可以自主地选择进入某个桌面,而不是固定进入一个桌面。游戏提供多个游戏桌面,提供给众多用户选择。游戏能容纳一定数量人同时游戏。服务器不会有负担,并且服务器能准确地定位和转发每个游戏对弈双方的数据包。(5)用户可以自主选择对弈者系统给用户一定的自由度能让用户自主的选择对弈方,并可在未开始对弈的时候随意变换座位。进入游戏后则不提供任意跳出游戏而与其它人进行对弈。在此种情况下只有对弈方同意离开方可退出游戏进入游戏主界面。恢复自由选择对弈方的功能。(6)对弈中可以进行聊天对弈双方可以在对弈的同时进行聊天。消息栏中保留聊天的记录。且消息的发送和接收同步运行。有常用短语选择栏,用户可以通过选择它当中的短语进行快速聊天。

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

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号