プログラマ定例会

はじめまして新しくO-GAMESに参加しましたJun-gといいます。

最近まで某ゲームメーカーでプログラマやってまして、プログラム経験者不足に悩むO-GAMES的には熱烈歓迎の扱いを受けていますw しばらくゲームを作る時間が取れそうにないので、運営支援というかアドバイザー的な感じで何かしようと思います。よろしくお願いします。

昨夜は週一のプログラマ定例会がSkypeで行われました。何名かのプログラマさん達とお話して、今作っているものを見せてもらったのですが、皆さんゲームプログラムが初めてとは思えないほど、ちゃんと動くものができてきています。

その後質問タイムみたいな感じになったんですが、その内容をせっかくなのでここに書き残しておこうかと思います。まずは2Dシューティングゲームを作っているAさんからの相談。
「ソース中のコメントの書き方がよくわからない。コメントにはどのようなことを書けばよいか?」

お察しの通り、コメントは割と侮れないものです。ソースというものは見やすければ見やすいほどバグりにくく、またバグを見つけやすくなると思うんですが、そこで重要なのがコメントです。ところで、そもそもコメントは誰のために書くものかを考えてみましょう。

  • 他人に読ませるため
  • 未来の自分に読ませるため

私の答はこの2つです。最初のはまあわかると思いますが、特に意識したいのは2つ目です。自分が書いたコードでも、1週間、2週間、そして1ヶ月後に見たら必ず忘れています。後で見て、あれここ何やってんだっけ。ここは何でこうなってるんだっけ?みたいなことが頻繁に起こります。これが終盤デバッグの効率を下げ、余計な時間を費やしてしまうことに繋がります。つまり後で忘れそうなことをコメントで補足しておけば、高確率で後で役に立ちます。ちなみにソースを後で見る・見られる機会は意外とあります。デバッグ時もそうですし、リリース後の機能追加、別プロジェクトで一部を使い回す時など。とりあえず今動いたらそれで終わり、とは考えない方が無難です。
経験を積むと、これはコメントに書いておかないと後で忘れそうだなーというのがコーディング時に大体わかるようになります。初心者のうちはわからないかもしれません。そういう場合はやはり多めに書くべきです。迷ったらとりあえず書いておくのがお勧めです。
ただしコードを見ればすぐわかるようなことは書かなくていいです。

int x=0; // xに0を入れる

みたいなコメントは要りません。まあこれは極端な例ですが、意味のないコメントは書かないようにしましょう。

その他、ソースをとにかく読みやすくするために、心がけておくといいかもしれないのが、

  • 関数は短く。理想はエディタの一画面に収まるぐらい。長くなる場合は分ける。(ただし処理内容によっては長いのが仕方ない場合もある。)
  • ファイル(cppとか)は短く。理想はマウスのホイールでスクロールさせて最後まで見るのが苦にならないくらい。長くなる場合は別ファイルに分ける。(ただしこれも内容にもよる。)

まあ多分本とかに載ってそうな基本的なことでありますけども、ご参考まで。

あとは変数名の付け方とかも多少あるんですけども、それはまた別の機会にでも。

みんなで見やすいプログラムを書いて世界征服しようぜ。とりあえず初ブログはこんなもんで、また気が向いた時に書かせて頂きます。