• 分享一个象棋打谱软件


    用例

    用例名称:移动棋子

    主要场景

    1. 红方首先移动棋子,然后黑方移动棋子,双方轮流移动棋子,直到一方“将”或“帅”被吃掉
    2. 可以无限制步数悔棋
    3. 每下一步棋子记录棋着,如“车一进一”、“车9平8”等

    扩展场景

    1. 移动棋子必须符合中国象棋的规则
    2. 任何一方“将”或“帅”被将死则不再允许继续走棋,但可以向前浏览(参见“浏览棋着”用例)棋着

    用例名称:浏览棋着

    主要场景

    1. 可以向后浏览已经走过的棋着
    2. 在场景1的基础上,可以向前浏览棋着

    扩展场景

    1. 在场景1或2中,浏览最后一步棋着之前的棋着时,如果用户试图移动棋子(参见“移动棋子”用例),则清除当前棋着以后的所有棋着,如:当前下到了第20步,如果向前浏览到第10步,此时如果用户要移动棋子,那么11步到20步的棋着将被清除

    用例名称:保存棋谱

    主要场景

    1. 将棋谱保存为文本文件

    用例名称:查看棋谱

    主要场景

    1. 从文本文件加载棋谱并浏览(参见“浏览棋子”用例)

    扩展场景

    1. 允许修改棋谱

    主要概念

    image

    主要类

    image

    效果图

    image

    说明

    只是个半成品,还有如下功能可以添加:

    1. 从文件中读取棋谱
    2. 人工智能

    另外,代码也需要重构。写这个程序地目的是为了练练手,学习面向对象的思想,哈哈。不加班真好!希望大家看了代码不要吐,我有时间就重构下,如果阁下看不懂代码,只能说明我写的太次,代码就是最好的设计文档。

    源码下载地址

  • 相关阅读:
    原创:ESXi5.1安装实验1
    Xeon 5000系列说起
    ESXi5.1安装实验3
    VMware虚拟化网络和存储功能简介
    Understanding Core Exchange Server 2007 Design Plans
    Exchange 2007和2003,2000等共存。
    自动发现服务深入理解
    管理 POP3 和 IMAP4 服务
    原创:vsphere client 5.1安装实战
    UPNP解读2含netbios,wins,DNS
  • 原文地址:https://www.cnblogs.com/zzy0471/p/1732887.html
Copyright © 2020-2023  润新知