欢迎来到天天文库
浏览记录
ID:36536131
大小:1.17 MB
页数:30页
时间:2019-05-11
《黑白棋网络对战平台系统的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、Java黑白棋课程设计Java课程设计黑白棋网络对战平台系统的设计与实现姓名学号时间2011年5月5日星期四-29-Java黑白棋课程设计一、需求分析41.1功能需求41.2开发环境4二、整体架构4三、通信协议43.1协议指令53.1.1客户端的指令集63.1.2服务器端的指令集7四、详细设计94.1数据库设计94.2包图94.2.1客户端94.2.2服务器端94.3类图104.3.1客户端104.3.2服务器端114.4类概要13五、使用指南135.1概况135.2流程145.3界面介绍15六、测试用例……………………………………………………………………
2、………………………………22七、时间进度………………………………………………………………………………………………………23八、关键技术实现………………………………………………………………………………………………24九、特色功能………………………………………………………………………………………………………29十、个人体会……………………………………………………………………………………………………30-29-Java黑白棋课程设计一、需求分析1.1功能需求本系统实现一个基于C/S架构的黑白棋网络对战平台,在这个系统中,服务器提供一个平台使得多个玩家可以同时连接
3、服务器进行双人对战,多人观看。同时提供友好的图形用户界面。具体功能需求如下:1.1.1客户端l提供登陆窗体使用户可以通过输入其用户名和密码登陆服务器,此时可以点击设置按钮设置服务器IP地址。l提供注册窗体使得新的用户可以通过此注册一个新ID。l登陆服务器后用户将进入游戏大厅,用户可以看到当前已登录用户的所有信息。l在游戏大厅内,系统将提供一个供用户聊天的聊天窗口,这里是所有登录用户用于群聊的部分l进入大厅后,玩家可以进入游戏模式。也可进入观战模式l在用于黑白棋比赛的窗口中,将显示当前棋盘、下棋记录,用户详情以及其对手的详情,同时提供一个聊天窗口。l在比赛过
4、程中,用户可以向对手请求悔棋,当且仅当对手同意时方能悔棋;同时用户也可以向对手认输从而提前结束比赛。l在比赛尚未开始或一局比赛已经结束时,用户可以正常退出黑白棋游戏从而结束比赛。1.1.2服务器端l提供图形化的界面,显示服务器运行状况以及提供启动和关闭服务器的接口l服务器被启动后,对于每一个用户的连接,将启动一个线程用于该连接上的用户的事务处理l服务器将对用户的请求(诸如登陆,注册,获得大厅信息等)结合数据库的查询给予适当的反馈信息l-29-Java黑白棋课程设计每当有一个新的用户登陆时,服务器将这则消息发送给其他每个在线用户l每当有一个新的用户就坐时,服
5、务器将这则消息发送给其他每个在线用户。l当比赛结束或有用户认输或强行退出比赛时,服务器将要更新数据库上他们的比赛积分值和输赢次数,同时将更新后的信息发送给每一个用户1.2开发环境开发语言:Java开发工具:Eclipse-SDK-3.5.1-win32所用开发系统:MicrosoftWindowsXP二、整体架构本系统采用经典的C/S模式。C/S(Client/Server)架构,即大家熟知的客户机和服务器架构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数
6、应用软件系统都是Client/Server形式的两层架构。C/S架构把数据库内容放在远程的服务器上,而在客户机上安装相应软件。C/S软件一般采用两层架构,其分布结构如图1所示。它由两部分构成:前端是客户机,即Client,结合了程序界面和应用逻辑,接受用户的请求,并向数据库服务提出请求,后端是服务器,即数据管理(Server),将数据提交给客户端,客户端将数据进行计算并将结果呈现给用户,还要提供完善的安全保护及对数据的完整性处理等操作,并允许多个客户同时访问同一个数据库。图1C/S结构三、通信协议本系统的通信协议和一些经典的网络应用通信协议类似(例如FTP
7、协议),客户端和服务器都是通过发送/接收命令(通常由命令头+参数构成)来通信的。-29-Java黑白棋课程设计3.1协议指令3.1.1客户端的指令集3.1.1.1用户名(USERNAME)其参数是用户输入的用户名,客户端将此命令发送给服务器端有两种场景:一是用户登陆;二是用户注册。对于这两种用途,服务器端都会直接在数据库中国查找该用户名给出用户名存在/不存在的消息,由客户端后续的操作去处理这些情况。3.1.1.2密码(PASSWORD)其参数是用户输入的密码,客户端将此命令发送给服务器以实现登陆。3.1.1.3开始比赛(START)无参指令,用于通知服务器
8、该用户准备好了比赛。3.1.1.4放置棋子(GetQIZI)参数为
此文档下载收益归作者所有