LogicalInSpace

ITについて

Bonanzaのソースコード

2009-12-14 20:54:45 | 将棋ソフト
bonanza_v4.0.3 を紙に出して見ました。
B5の用紙に出して見ると、約400ページありました。 (片面のみ)

最新は、保木さんのHPを見ると、bonanza_v4.1.2 みたいでした。
本格的に、ソースコードを解析をして、将棋ソフトを開発するつもりはないですが、時間がある時にどんな動きになっているかを見てみたいと思いました。

私は、長いソースコードでも紙に出して読む習慣があります。


<注意書き>
当たり前の注意書きをしたいと思います。
以下は専門用語が出てきますが、分からない方は読まないで(スルーして)ください。

プログラムは、パソコンに開発環境がなければ、開発は出来ません。
VC++、BCC などのコンパイラが必要になります。
※コンパイラはフリーでも落ちていますが、初心者は探す方が大変だと思います。
※また、開発環境を整えることも大変だと思います。

プログラムは、最低でも5か月の勉強が必要になります。 (個人差はあります)
通常はDOSのプログラム(最低3カ月)⇒Windowsのプログラム(最低2カ月)を勉強するのが普通です。 最低なので、1-3年以上かかる方もいます。
※期間については、真に受けないでください。 人によって、かなり個人差があります。 出来ない方は、一生出来ない方もいます。
※最低でも5カ月と書いていますが、1から勉強をして5か月で開発が出来れば相当、優秀だと思います。 でも、上には上がいますけど・・・。
同然、プログラムの勉強のみなので、パソコンの操作などは含みません。

普通のユーザーは意識をしませんが、Windowsは、ウィンドウループの仕組みを知らないとプログラムは書けません。

Bonanzaは、C言語で書かれています。
C言語は、手続き型プログラムなので、オブジェクト指向言語ではありません。
C言語なので、ポインター、構造体を知らないと解読は出来ません。
C言語の文法に精通していることと、C言語でWindows(Win32 API)の仕組み精通していることが前提です。

プログラムの用語などを検索をすると、色々と出てきます。
初心者は特に、用語に惑わされるので注意をしていください。

C言語、C++言語、Java、C#言語、JavaScript、PHPなどは、文法が非常に似ていますので注意してください。
C++言語は、C言語を含み以外は、すべて、違う言語です。

ソースコードは、約400ページあるので、それなりのプログラムの経験者を対象にしています。
<注意書き(ここまで)>