0
Help us understand the problem. What are the problem?

posted at

JSで初めてアプリ(オセロ)を作った話

1.動機

ドットインストールの動画通りに簡単なwebアプリを作ってみたが、ただコードをコピーしているだけだったので、自分でプログラムを考えながら、1つアプリを作ってみることにした。

2.成果物

目の前の人とオセロができるアプリ(オンライン対戦はできない)
https://github.com/pontabi/JS_Othello

基本的な機能は実装できているが、2つほど欠陥あり

  • どちらかが駒を置けなくなると、そこでゲームが止まってしまう
  • ゲームが終わった後の勝利判定がなく、次のゲームにも進めない

どちらもすぐに実装できるとは思うが、モチベーションが続かなかった。(1日でリタイア...)

3.反省点

  • クラスを使ってアプリを作ってみたかったので、いろいろなクラスを作ってみたはいいものの、逆にわかりづらいコードになってしまった。(機能の分割が下手だった。)
  • コードが冗長。自分の書いたコードは550行ほどだったが、他の人がJSで作ったリバーシアプリを見ると、200行強で書けていた
  • オセロを置けるかどうかの判定処理や、オセロをひっくり返す処理を全ての方向(左上,上,右上...)で1つづつ書いていたのが一番の問題。
const direction = [
{x: -1, y: -1},
{x: 0, y: -1},
{x: 1, y: -1,
...
}

のように配列を定義して、判定と反転処理を一回だけ定義すれば良いようにするべきだった

4.感想

初めて作ったアプリにしては、上出来だと思っていて、満足している。今年中にバックエンド側の知識も少しつけて、オンライン対戦もできるアプリを作りたい。その時にはTypeScriptやReactを使って実装したい

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
0
Help us understand the problem. What are the problem?