用Swift寫圍棋App-01準(zhǔn)備工作

tags: App, 開發(fā)隨筆
已完成章節(jié)索引

用Swift寫圍棋App-00序
用Swift寫圍棋App-01準(zhǔn)備工作
用Swift寫圍棋App-02建立工程
用Swift寫圍棋App-03StoryBoard
用Swift寫圍棋App-04棋盤
用Swift寫圍棋App-05初識(shí)棋譜
用Swift寫圍棋App-06解析器初版
用Swift寫圍棋App-07解析器改進(jìn)
用Swift寫圍棋App-08繪制每一手棋
用Swift寫圍棋App-09分片算法
用Swift寫圍棋App-10氣的算法
用Swift寫圍棋App-11算法改進(jìn)

8a7de1e5697c7072dfed881fa85b50be.jpg

開發(fā)應(yīng)用首先要了解其業(yè)務(wù)領(lǐng)域。
對(duì)于圍棋而言,要先了解其基本規(guī)則。我將基本規(guī)則匯總?cè)缦拢?/p>

  • 圍棋通常由兩個(gè)人進(jìn)行對(duì)局,對(duì)局時(shí)一方執(zhí)黑棋,另一方執(zhí)白棋。
  • 圍棋應(yīng)從空棋盤開始對(duì)局。
  • 在現(xiàn)代圍棋對(duì)局中,執(zhí)黑棋的一方應(yīng)先下子,執(zhí)白棋的一方隨后下子。
  • 圍棋對(duì)局時(shí),雙方應(yīng)該輪流在棋盤上下子,每方每次只能在棋盤上下一個(gè)子。
  • 棋子下在棋盤上之后就再也不能移動(dòng),直至終局。所謂“落子無悔”。
  • 終局計(jì)算勝負(fù)時(shí),圍得地多者勝。

打譜軟件邏輯稍微簡單,但是也會(huì)涉及以下的業(yè)務(wù)實(shí)體:

  • ** 棋子**:棋子分為黑棋和白棋,黑子181個(gè),白子180個(gè)。棋子呈圓形。中國一般使用一面平、一面凸的棋子,日本、韓國則常用兩面凸的棋子。中國云南所產(chǎn)的“云子”為歷來的弈者所青睞,迄今已有五百馀年的歷史。較為珍貴的棋子材料有貝殼、瑪瑙等。對(duì)弈時(shí)雙方每人使用一種顏色。每一個(gè)棋子都是平等的,不存在大小之分。

  • 棋盤:圍棋盤由19條橫線19條豎線組成,共361個(gè)交叉點(diǎn),最外邊的線稱為邊線。為了便于識(shí)別棋子的位置,棋盤上劃了九個(gè)點(diǎn),術(shù)語稱做“星”,中央的星點(diǎn)又稱為“天元”。棋盤可分為“角”、“邊”以及“中腹”。現(xiàn)今的棋盤則有19×19、13×13、9×9,較為普遍,另外還有一些是較罕見的15×15、17×17。正式比賽所用棋盤為19×19,其他作為教學(xué)和練習(xí)輔助。

圍棋行棋規(guī)則:

  • 棋子要下在棋盤的邊線之內(nèi)(看19×19棋盤圖),邊線之外的棋子無效。
  • 棋盤是由橫線和豎線組成的,橫豎相交的地方叫做交叉點(diǎn),棋子只能落在交叉點(diǎn)上。
  • 拿黑子的一方先行,雙方交替落子。任何一方不可以連續(xù)下兩手,否則判負(fù)。
    先說這么多。對(duì)于打譜這個(gè)業(yè)務(wù)而言,可能差不過夠了。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容