# fun-game-application **Repository Path**: potato_and_codefish/fun-game-application ## Basic Information - **Project Name**: fun-game-application - **Description**: cb的游戏设计课程小实验 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-05-28 - **Last Updated**: 2022-05-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: SpringCloud ## README ## 游戏程序设计——象棋对战实验报告 ### 题目描述: 将cnchess游戏中的AI部分,即alpha-beta剪枝部分的代码用java或者python实现, 即将棋谱搜索从客户端移至服务器端实现。先通过本地客户端的测试程序,再将js端的代码改成与服务器端通信的。 ### 示例代码研究: 下载,解压,浏览器运行,可以看到这样的界面:
![img.png](doc/img.png)
帧不戳!先玩上个两局...
![img.png](doc/cnchess_fail.png)
emm...这AI挺强,那就来研究研究它怎么写的。
_**过了几分钟...**_
本人太菜,没有js和算法基础,实在看不懂,告辞! ### ~~实验总结(雾)~~ ~~通过本次实验,我深刻的认识到自己能力的不足,学习的道路还很漫长。~~
...
...
...
_那总不能啥都不写吧,既然这个实验的核心是alpha-beta剪枝,那就拿个棋谱种数比较少的来入门吧。 说到这个世界上最简单的棋,那就是井字棋了。再结合最近在学的微服务框架,那不就高大上起来了吗...嘿嘿。OK,正片开始~_ ## 井字棋对战——微服务版 ### 游戏核心算法 参见[井字棋游戏核心介绍](./井字棋游戏核心介绍.md) ### 技术栈
名称说明官网
SpringBootMVC框架,提供Rest服务 https://spring.io/projects/spring-boot
SpringCloud微服务框架 https://spring.io/projects/spring-cloud/
eureka服务注册中心,用于注册微服务 https://www.eurekanetwork.org/
openFeign微服务Rest远程调用 https://spring.io/projects/spring-cloud-openfeign
MySQL关系型数据库,记录游戏对局记录 https://www.mysql.com/
Rediskey-value型NoSQL,存储游戏对局状态 https://redis.io/
RabbitMQ消息队列,提供游戏对局超时结束功能 https://www.rabbitmq.com/
### 模块介绍
模块名称模块描述
game-core井字棋游戏核心模块
common-api实体类、接口等通用模块
discovery-eureka-servereureka微注册服务模块
game-service-provider游戏服务业务逻辑模块
game-service-customer微服务调用模块