网络中国象棋对战.ppt_第1页
网络中国象棋对战.ppt_第2页
网络中国象棋对战.ppt_第3页
网络中国象棋对战.ppt_第4页
网络中国象棋对战.ppt_第5页
已阅读5页,还剩19页未读, 继续免费阅读

下载本文档

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

文档简介

1、JavaSE 6项目开发培训视频,网络中国象棋对战,课程安排,开发背景 系统分析 系统设计 服务器端框架设计 服务器线程的开发 服务器代理线程的开发与设计 服务器端的完善,课程安排(续),棋子类的开发 客户端主类框架的开发 客户端代理线程的开发 规则类的开发与设计 棋盘类的开发与设计 客户端主类业务代码的完善 消息处理机制 知识点汇总 章末总结,开发背景,中国象棋有着悠久的历史,象棋爱好者更是不计其数,但是由于人们工作地点、时间的限制,原始那种面对面的下棋方式已经不再适应人们的生活,人们已经开始走向网络象棋 。 网络象棋有着很多的优点,通过网络象棋,对弈双方可以是网络上任意两个象棋爱好者,甚至

2、从不认识。网络象棋让对弈的范围更加的广泛,让象棋爱好者可以与更多的象棋爱好者切磋棋艺 。,系统分析,系统分析主要是完成软件开发前的一些准备工作,为软件的顺利进行做好准备,同时其也是后面系统设计的前提,所以系统分析必须尽量详细,防止造成项目的返工,带来不必要的损失 。,系统分析(续),1、服务器端 可以指定服务端口号 。 可以支撑多人同时在线 。 可以显示在线用户的信息 。 不允许玩家同名 。,系统分析(续),2、客户端 能够通过主机IP及端口号登录到服务器 。 可以显示当前所有用户 。 可以从在线用户列表中选择玩家进行去挑战 。 可以接受或拒绝挑战 。 如果对方正在与其他玩家对弈中,则应给出相

3、应的提示信息 。 象棋规则一定要严密 。 棋子样式采用最普通的橡胶式象棋,即棋子黑色,字为红色和白色 。,系统设计,系统分析确定了本系统的最终目标,系统结构如下图所示:,系统设计(续),该游戏的主体是客户端,整个游戏的规则都是在客户端,服务器端只是在中间传递数据,起到一个中介的作用,具体实现在后面会进行详细介绍。,系统预览,这一节将对本系统各功能进行演示。,服务器端框架设计,从本节开始将正式进入该游戏的开发过程,当然首先从服务器端开始,因为只有有了服务器的基础框架,客户端在开发过程中才能进行一些必要的测试,这是该类游戏一般的开发流程 。 服务器端主类即服务器端的运行类,用户通过运行该类进入服务

4、器的主界面,其实这里暂时只能开发出服务器的简单框架及界面,因为服务器线程和服务器代理线程暂时都还没有开发,等相应的类开发完成之后,再回到该类进行代码完善 。,服务器线程的开发,服务器线程是服务器启动后创建并启动的第一个线程,该线程主要用于接收客户端的连接,并为每一个连接分配一个服务器代理线程 。,服务器代理线程的开发与设计,服务器代理线程主要用于接收客户端传来的信息,并将该信息转发给对应的另一客户端。服务器为所有客户端都分配了一个该类线程实例,单独为特定客户端进行服务。同时每一个服务器代理线程都有能惟一标识其的名称 。,服务器端的完善,服务器端的类的框架都已经开发完成,但在一开始时,由于没有服

5、务器线程和服务器代理线程,有些业务处理代码没有开发,本节将完成对服务器端各个类的完善工作 。,棋子类的开发,前面我们已经基本完成了服务器端的开发,已经可以接收客户端的连接,从本节开始将正式进入客户端的开发,下象棋当然要有棋子,下面我们将对棋子类进行介绍,该类主要包含着棋子的属性及一些关于属性的小的方法 。,客户端主类框架的开发,客户端主类即客户端的运行类,用户通过运行该类连接服务器,也是通过在该类的窗体中与其他玩家进行对弈。当然其与服务器端主类的开发类似,由于部分类没有开发,这里暂时只能完成界面的搭建及简单的业务代码框架,具体的业务代码在后面的开发中会进行完善 。,客户端代理线程的开发,客户端

6、代理线程主要用于接收服务器传来的消息,并根据不同的消息进行相应的业务处理,当然这里暂时先给出该类的代码框架,对消息的业务处理代码在后面会进行介绍 。,规则类的开发与设计,通过上面的开发,客户端已经可以连接到服务器,而且通信的框架也已经开发完成,下面我们将正式开始进入游戏逻辑业务的开发。首先将从下棋最基本的一步开始,即开发下棋的规则 。,棋盘类的开发与设计,棋盘类除了完成绘制棋盘的作用,同时还负责下棋逻辑的处理 。,消息处理机制,下面我们将对消息的处理进行简单的介绍。,知识点汇总,数组的巧妙用法:对于像棋盘这样的情况,如果能够巧妙的运用数组下标代替像素坐标,将起到非常好的效果。本案例的棋盘就利用

7、了数组,将棋子放在数组里。这样对于每一个位置的状态,都可以通过对应的数组状态进行确定,非常的方便 。 网络套接字的开发方法:该技术是Java程序员必备的一项技术,也是进行桌面版网络程序开发的必不可少的技术,特别是对于一些对实时性要求高的应用,网络套接字是必须的。,知识点汇总,游戏通信方法:本节是通过字符串传递信息,读者应该在游戏中体会到了,其实通信的手段很多,不同的开发者有着不同的习惯。在后面的另一个游戏例子中还会对该知识进行更详细的介绍,希望读者能通过下一个例子的学习熟练掌握这一方法 。 Swing的相关知识:其中比较重要的一点是抗锯齿的使用方法。通过使用抗锯齿这个知识点,使象棋棋子变的更加的平滑,美观。当然在一些场合使用其也会带来不好的影响,因为抗锯齿占用很大的系统资源,如果使用不当会严重影响游戏

温馨提示

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

评论

0/150

提交评论