Java编程那些事儿109——网络编程示例2 - 编程入门网
Java编程那些事儿109——网络编程示例2时间:2010-03-20 csdn 陈跃峰13.3.2 猜数字小游戏 下面这个示例是一个猜数字的控制台小游戏。该游戏的规则是:当客户端第一次连接到服务器端时,服务器端生产一个「0,50」之间的随机数字,然后客户端输入数字来猜该数字,每次客户端输入数字以后,发送给服务器端,服务器端判断该客户端发送的数字和随机数字的关系,并反馈比较结果,客户端总共有5次猜的机会,猜中时提示猜中,当输入“quit”时结束程序。 和前面的示例类似,在进行网络程序开发时,首先需要分解一下功能的实现,觉得功能是在客户端程序中实现还是在服务器端程序中实现。区分的规则一般是:客户端程序实现接收用户输入等界面功能,并实现一些基础的校验降低服务器端的压力,而将程序核心的逻辑以及数据存储等功能放在服务器端进行实现。遵循该原则划分的客户端和服务器端功能如下所示。 客户端程序功能列表: 1、接收用户控制台输入 2、判断输入内容是否合法 3、按照协议格式发送数据 4、根据服务器端的反馈给出相应提示 服务器端程序功能列表: 1、接收客户端发送数据 2、按照协议格式解析数据 3、判断发送过来的数字和随机数字的关系 4、根据判断结果生产协议数据 5、将生产的数据反馈给客户端 在该示例中,实际使用的网络命令也只有两条,所以显得协议的格式比较简单。 其中客户端程序协议格式如下: 1、将用户输入的数字转换为字符串,然后转换为byte数组 2、发送“quit”字符串代表退出 Java编程那些事儿109——网络编程示例2(2)时间:2010-03-20 csdn 陈跃峰其中服务器端程序协议格式如下: 1、反馈长度为1个字节,数字0代表相等(猜中),1代表大了,2代表小了,其它数字代表错误。 实现该程序的代码比较多,下面分为客户端程序实现和服务器端程序实现分别进行列举。 客户端程序实现代码如下:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |