Oを打つ

必ず×が勝つ?

※Reactを学習したい人は「Reactチュートリアル」で学習してみてください。このブログはこのチュートリアルで感じたことや自分のメモを記述していきます。

いよいよ終了判定のプログラムかと思ったが、よく考えると「×」しか打てない状態だ。これじゃー「×」側が必勝だ。で、相手の「○」を打てるようにする。コンポーネントBoardを次のように変更する。

コード確認

コードを確認していく。まず6行目で×か○の手番か状態を保持する変数xIsNextを初期化する。trueで×、falseで○となる。

次に関数(メソッド)handleClickだ。この関数はマス目をクリックした時にSquareから呼び出される。19行目でクリック情報を保持している変数squares[i]に、変数xIsNextがtrueの時は×、それ以外は○を設定している。

そしてクリックされたので手番を変更する必要がある。それが22行目だ。変数xIsNextの値を否定(!命令)してxIsNextに設定している。つまり、xIsNextの値がtrue(×)なら否定(!命令)しfalse(○)としてからxIsNextに設定している。

最後に手番がわかるように×、○を画面表示する。

実行してみる。

読めない・・・

非常にシンプルなコードで○が打てるようになった。さすがチュートリアルを作成するだけあって、一流のプログラマーな人達なんだなぁと感心していたのだが・・・。次に勝者判定のコードが登場した。

えっ!?。三流プログラマーな私にはコードが読めない・・・

前へ<ーーー>つづく

タイトルとURLをコピーしました