マリオの完コピvol.33 リファクタリング
ハルポップ 2016-06-16 23:40:41
メインソースに書き続けているので、機能ごとに分割してみようと思い、マップクラスやプレイヤークラスを作って、ソースを修正。定数用のヘッダーも作った。
挙動が変わらないようにしてソースを変える事をリファクタリングと言う。
ただクラスはメンバ変数をpublicにして構造体のように使っているので美しくはない。
そこで尊敬する中村光一先生のお言葉をお借りする。「文法や作法が間違っていても、結果としてちゃんと動いていたら、ゲームができたら、ゲームが面白かったら、それでOK」
また、速度はint型にして固定小数として使っていたので、float型に修正。
当初は全部int型にしてファミコンと同じように固定小数でやろうと思ってたけど、使う箇所全部で割り算が必要でコードが見辛くなる。使う変数によっては4096で割ったり256で割ったりとバラバラ。
だからfloatに統一した。
挙動が変わらないようにしてソースを変える事をリファクタリングと言う。
ただクラスはメンバ変数をpublicにして構造体のように使っているので美しくはない。
そこで尊敬する中村光一先生のお言葉をお借りする。「文法や作法が間違っていても、結果としてちゃんと動いていたら、ゲームができたら、ゲームが面白かったら、それでOK」
また、速度はint型にして固定小数として使っていたので、float型に修正。
当初は全部int型にしてファミコンと同じように固定小数でやろうと思ってたけど、使う箇所全部で割り算が必要でコードが見辛くなる。使う変数によっては4096で割ったり256で割ったりとバラバラ。
だからfloatに統一した。