まず、学生あるあるコード
- プレイヤーが神オブジェクトになっている。
- 機能を細分化して設計されてない。
- シーン管理がswitch文で行われている。
- 基本的にコピペのコードになっている。
- 1つ関数が長い。
- 頭良く書いている。
- switch文がたくさんある。
- 他人が読むとき苦になる。
- などなどがあります。
解決策
プレイヤーなどの神オブジェクトについて
- 神オブジェクトとは?
- 1つクラスの中に様々の処理があり、1つのクラスが最強になっていることです。
- 原因
- 細分化の仕方がわからない。めんどくさい などがあるかもしれません。
- 解決策
- まずは、ゲームオブジェクトになるクラスに様々な機能を持たせるというイメージをしてもらうとわかやりすいかもしれません。
- 様々な機能の作り方は、機能クラスに分けていきます。
- ゲームオブジェクトの情報がほしい場合は、機能クラスでオブジェクトのポインターを取得してきます。
- そうすれば、座標などが取得できます。
シーン管理について
- switch文での管理はだめな理由
- 1つのシーンが増えたら1つのcaseを作らなければならない。
- それはいわゆるコピペが生まれるだけです。
- 解決策
- シーン管理のクラスを作りそこに各シーンを登録していく形にします。
- 現在のシーンだけの情報をシーン管理に持たせます。
- UpdateやDrawなどですべて動く形にしていきます。
基本的にコピペのコードになっている。
- 関数の中に同じ処理が複数個ある。
- 関数分けをして引数をうまく使いましょう。
- if文が同じような判定になって、その中も同じような処理がある。
- テーブル化をしてあげましょう。
- ハードコーディングが多い。
頭良く書いている。
- 自分しかわからないコードを書いてしまう。
- 処理を上から見てもよくわからない。
- 解消法
- ある意味、ばかにコーディングしよう。
- 他人の気持ちになりコードを書こう。
まとめ
- 色々書いてきましたが、だれかの参考になればうれしいです。
- あと、Gitを使いましょう!!
- タスク管理およびスケジュール管理を行いましょう!!
以上です。