JavaScript中國象棋程序(0) - 前言


“JavaScript中國象棋程序” 這一系列教程將帶你從頭使用JavaScript編寫一個中國象棋程序。希望通過這個系列,我們對博弈程序的算法有一定的了解。同時,我們也將構建出一個不錯的中國象棋程序。

程序的最終效果點擊這里查看

JavaScript中國象棋程序系列共有9個部分:

0、JavaScript中國象棋程序(0)- 前言
 
在進入正題之前,本節是一些閑聊。如果你急切想進入正題,請跳過本節。

我學習中國象棋程序的歷程

最初是買了本書《C/C++中國象棋程序入門與提高》。這是本好書,寫得細致、透徹,我很愉快地讀完了前6章,毫無壓力。這6章講解了局面表示、走法生成、局面評估、基本搜索算法等內容。遺憾的是,第7章我讀不下去了。第7章是在講解,如何使用VC6.0設計圖形用戶界面。天啊,我是一個web程序員,我只想了解一下象棋程序的設計思想以及算法,我實在不想去使用陳舊的VC6.0來學習windows GUI編程啊。
幸運的是,我在這本書最后一頁的參考文獻里,發現了象棋百科全書網。在這家網站的github倉庫,發現了一個JavaScript版本的中國象棋軟件,而且性能還不錯。使用HTML + JavaScript來設計界面,自然是簡單了很多啊,這樣就能集中精力去學習象棋程序的算法了。
 

為什么選擇JavaScript

本教程之所以選擇JavaScript,講解JavaScript版本的中國象棋程序,我有以下幾個理由吧:
1、這個JavaScript版本的中國象棋程序,性能還不錯。
2、界面設計簡單,可以把主要精力用在對算法的學習上。
3、不用搭建環境。只要有文本編輯器(比如notepad++)和瀏覽器(最好是chrome吧),就足夠了。
4、程序用到的都是很基礎的JavaScript語法,應該沒有語法方面的障礙。
 

項目初衷

曾經讀到過一個教程手把手教你構建 C 語言編譯器,我覺得很有意思。於是我就仿照這它的格式,寫下了這個中國象棋程序教程。本教程的絕大部分思想都來自《C/C++中國象棋程序入門與提高》和象棋百科全書網象棋百科全書網上面還有很多不錯的文章,讓我受益匪淺。
如果你想了解原版的程序,請前往象棋百科全書網的github下載,這里面有很多個版本,我們使用的是JavaScript版。
 

這個教程難學嗎?

1、至少前4節是不難的吧,都是一些基本的東西。
2、第5節介紹了Alpha-Beta搜素,這個算法很重要,是后面幾節教程的基礎。
3、如果搞明白了Alpha-Beta搜索算法,隨后的3節應該也不算難吧,都是在Alpha-Beta算法的基礎上進行優化。
 
最后,非常感謝象棋百科全書網的前輩以及《C/C++中國象棋程序入門與提高》的作者。
祝你學得愉快。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM