【ゲーム開発】Unityユーザもたまにはコードの写経はいかが?

【ゲーム開発】Unityユーザもたまにはコードの写経はいかが?

プログラミング技能を高める時には写経も有効です。写経と言っても、お寺で筆を持ってお経を写すガチ写経の方ではなく、他の人が書いたコードを書き写す方の写経です。

これは何も心を落ち着かせるために行うのではなくて、コードの意図や表現をひとつずつ自分の中に取り込んで消化していくことで、自分の力へと変えていくために行います。

効率化が叫ばれる時代、コードなんてコピペすりゃいいじゃん! というインスタントなプログラミング方法もありますが、長く戦うためには自分の力を磨いていくのが一番です。

Unityで開発しているとコーディングよりも素材を組み合わせていく方に目が向きますが、そうした素材の良さを最大限に引き出すためにもプログラミングの技術は磨いておいて損はありません。

 

 

コードの写経とは

プログラマの修行方法の一つとして「写経」があります。ブッダの教えが書かれた経典を書き写し、その意図するところを理解するように、良いコードを書き写してコードの意図や処理の流れを理解する方法です。

一文字一文字書き写していく様子が仏教の写経のようであることから、このように呼ばれています。

用意するのはお経と半紙、筆ではなく、お手本となるコードとテキストエディタです。普段プログラミングをしているのがIDEならそこで大丈夫です。Unityを使っているならVisual StudioかVSCodeあたりでしょうか。書き写した後にコードを実行できる環境が必要なので、いつも使っている物を選ぶと良いでしょう。

これらのエディタを開き、お手本を見ながら決してコピペせずに手入力でコードを入力していきます。ウィンドウを切り替えるのは手間なので、ディスプレイを2つ用意するのがベストですが、ノートPCなどの場合はお手本とエディタが両方画面に表示されるようにウィンドウサイズを調整するとやりやすいです。

 

写経のメリット

コードを書き写すことで、コードを書いた人が実現したかった処理の意図や表現方法を自分の中に取り込むことができます。なるべくならコメント文が書かれているコードを選んで写すのが分かりやすくていいと思います。日本語でコメントを入れくれている方もいるので、そうしたコードから始めるとめっちゃやりやすいです。

コードを見たときに意識したいのは以下のポイントです。

  • なんのためのコードなのか
  • 全体の流れはどうなっているのか
  • 実現したい処理はどのように書かれているのか

特にこれらの点を意識しましょう。

目的があって、それを実現している手段(コード)をひとつひとつ入力し、自分の頭のフィルタを通すことでコードの書き方や表現などが身についていきます。

 

写経のデメリット

デメリットは時間がかかることです。短いコードならすぐ終わりますが、100行を超えるコードなどはそれなりに時間がかかります。単純に量が多いのに加えて、手入力でミスする可能性もあるためです。実はこうしたミスを直していくのも写経で身に付く技能のうちなのですが、時間がかかるのは避けられません。

明日が納期の仕事があるのに、「プログラミングの技能向上のため!」と言って写経をやり始めてしまったら、先輩や上司から雷を落とされても文句は言えません。なむ。

ある程度時間に余裕のあるときにやるようにしましょう。5分だけ戦法を使って1日5分だけ写経するというのでもいいかもしれません。

 

 

おわりに

ここまで読んだところで、「そりゃそうだね」と思ったかもしれません。

でも多くの人は、めんどくさがってこれをやらないんです。正直に言えば写経は大変ですからね。

逆に言えば、これをやるだけでその他大勢から一歩抜け出せるんです。

実際、Unityを使えばプログラミングはそれなりでもゲームは作れます。でも、ユーザがゲームを遊んだ時に最高のゲーム体験を得るためにはプログラミングによる良い制御が欠かせません。

もし、この先もプログラミングをやることがありそうだったら早いうちに写経に親しんでおくと技術の習得スピードが上がりますよ。

 

アプリ公開までの攻略チャートを作りました!

CTA-IMAGE

「スマホ向けのアプリを作ってみたいけど、何から手を付けていいか分からない!」


そんなお悩みをお持ちの方向けに、todoがアプリをリリースした経験から手順や考慮すべき点をまとめたe-bookを作成しました。ゲーム作りはそれ自体がゲームのように楽しいプロセスなので、「攻略チャート」と名付けています。


アプリをリリースする観点から書いているので各アプリストア向けの作業が入っていますが、企画、設計、開発、テスト部分については他のプラットフォームでも使える知識が満載です。


無料で入手できるのでぜひお早めにゲットして、開発をブーストさせてください!