美文网首页程序员iOS DeveloperiOS开发代码段
用Swift写围棋App-01准备工作

用Swift写围棋App-01准备工作

作者: MarkNote | 来源:发表于2015-12-27 15:25 被阅读817次

    tags: App, 开发随笔
    已完成章节索引

    用Swift写围棋App-00序
    用Swift写围棋App-01准备工作
    用Swift写围棋App-02建立工程
    用Swift写围棋App-03StoryBoard
    用Swift写围棋App-04棋盘
    用Swift写围棋App-05初识棋谱
    用Swift写围棋App-06解析器初版
    用Swift写围棋App-07解析器改进
    用Swift写围棋App-08绘制每一手棋
    用Swift写围棋App-09分片算法
    用Swift写围棋App-10气的算法
    用Swift写围棋App-11算法改进

    8a7de1e5697c7072dfed881fa85b50be.jpg

    开发应用首先要了解其业务领域。
    对于围棋而言,要先了解其基本规则。我将基本规则汇总如下:

    • 围棋通常由两个人进行对局,对局时一方执黑棋,另一方执白棋。
    • 围棋应从空棋盘开始对局。
    • 在现代围棋对局中,执黑棋的一方应先下子,执白棋的一方随后下子。
    • 围棋对局时,双方应该轮流在棋盘上下子,每方每次只能在棋盘上下一个子。
    • 棋子下在棋盘上之后就再也不能移动,直至终局。所谓“落子无悔”。
    • 终局计算胜负时,围得地多者胜。

    打谱软件逻辑稍微简单,但是也会涉及以下的业务实体:

    • ** 棋子**:棋子分为黑棋和白棋,黑子181个,白子180个。棋子呈圆形。中国一般使用一面平、一面凸的棋子,日本、韩国则常用两面凸的棋子。中国云南所产的“云子”为历来的弈者所青睐,迄今已有五百馀年的历史。较为珍贵的棋子材料有贝壳、玛瑙等。对弈时双方每人使用一种颜色。每一个棋子都是平等的,不存在大小之分。

    • 棋盘:围棋盘由19条横线19条竖线组成,共361个交叉点,最外边的线称为边线。为了便于识别棋子的位置,棋盘上划了九个点,术语称做“星”,中央的星点又称为“天元”。棋盘可分为“角”、“边”以及“中腹”。现今的棋盘则有19×19、13×13、9×9,较为普遍,另外还有一些是较罕见的15×15、17×17。正式比赛所用棋盘为19×19,其他作为教学和练习辅助。

    围棋行棋规则:

    • 棋子要下在棋盘的边线之内(看19×19棋盘图),边线之外的棋子无效。
    • 棋盘是由横线和竖线组成的,横竖相交的地方叫做交叉点,棋子只能落在交叉点上。
    • 拿黑子的一方先行,双方交替落子。任何一方不可以连续下两手,否则判负。
      先说这么多。对于打谱这个业务而言,可能差不过够了。

    相关文章

      网友评论

        本文标题:用Swift写围棋App-01准备工作

        本文链接:https://www.haomeiwen.com/subject/axybhttx.html