浙江科技
经济管理
JAVA语言
课程设计
报告 选题名称 五子棋小游戏
学生
专业班级 信管092
学生
学生成绩
指导教师 朱军
工作时间 2012-06-27
目 录
1 选题简介 3
2需求分析 4
2.1系统要实现的目标分析 4
2.2对输入输出数据及流程的分析 4
2.3开发环境及运行环境分析 5
2.3.1开发环境 5
2.3.2运行环境 5
3系统设计 5
3.1系统功能模块设计 5
3.2类设计 6
3.2.1 服务器类 6
3.2.2 游戏客户端 6
3.2.3 网络客户端类 7
3.2.4 棋盘类 7
3.3界面设计 7
4测试 8
4.1测试用例及结果 8
4.2程序功能的评价 8
5.总结 9
5.1遇到的
问题及解决的方法 9
5.2开发体会及自评成绩 9
参考文献 10
1 选题简介
电脑已经深入到日常
工作和生活的方方面面,比如文字处理、信息管理、辅助
设计、图形图像处理、教育培训以及游戏娱乐等,各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。然而,虽然现在世界上已经充满了花样繁多的各种软件,但它们依然不能满足用户的各种特殊需要,人们还不得不开发适合自己特殊需求的
软件。Java语言作为一种面向对象的编程语言,具有分布式,可移植,高性能,多线程等特点[1]。如今网络休闲游戏发展迅速,它凭借健康、方便、互动性强、益智等诸多优点,成为大部分现代人休闲娱乐的首选。
网络五子棋游戏是使用Java语言开发的一款游戏。它使用SOCKET建立连接,多线程处理数据,这些特点使这款游戏无论是服务器还是客户端的实现都相对容易。随着计算机网络技术的发展,网络游戏已经成为计算机技术中最具潜力的热点领域,随着联众世界、腾讯游戏等网络游戏平台的拓展,越来越多的人参与到网络游戏中。特别是其中一些休闲益智类的棋牌游戏,集趣味性、娱乐性、互动性和益智性于一体,拥有大量的用户。因此使用
Java开发网络五子棋游戏是一个实用性很强的
毕业设计项目。
网络五子棋游戏的总体功能是要设计出具有精美界面的,具备人工智能的,支持
网络对弈的五子棋游戏。本系统最终的目的是建立一个有具体规则的五子棋平台,使两台不同
计算机的使用者通过一定的网络连接,达到网络对弈的目的,以及单机上的人机对战。
2需求分析
2.1
系统要实现的目标分析
本课题为了熟悉五子棋规则及技巧,以及研究简单的人工智能,决定用Java开发五子棋游戏。主要完成人人对战的功能。网络连接部分为Socket编程应用,客户端负责界面维护和收集用户输入的信息及错误处理。服务器维护在线用户的基本信息和任意两个对战用户的棋盘信息,动态维护用户
列表。分析估值模块中的影响精准性的几个要素,以及提出若干提高精准性的办法,以及对它们的
搜索进行比较,在这些算法的基础上分析一些提高电脑智能
方案。
2.2对输入输出数据及流程的分析
2.3开发环境及运行环境分析
2.3.1开发环境
? Microsoft Windows XP Professional Service Pack 3
? JDK 1.60
? JCreator Pro
2.3.2运行环境
? Microsoft Windows XP操作系统
? 1024*768或以上的屏幕分辨率
3系统设计
3.1系统功能模块设计
根据上面的系统的设计要求,可以将此网络五子棋游戏分为以下几个模块:
? 初始化模块:建立棋盘数组并清零以备使用;初始化键盘/鼠标等输入输出设备并在屏幕上画出棋盘。
? 主循环控制模块:负责控制下棋顺序,当轮到某方下子时,负责将
程序流程转到相应的模块中,主要担当一个调度者的角色。
? 玩家落子模块:即用户在指定落子区域单击后,程序会计算