こんにちわ、横浜すみっこクリエイター
です。Unityでゲームを制作して販売するまでの軌跡を描くゆにすち!のC#基礎編です!
今回のテーマは、コメントについてです。だいぶ軽めの箸休め的な内容になると思います。
前回のコードに追記していきますので、ぜひそちらからご覧ください。
また「コーディングスタイルについて」を先にご一読いただけますと幸いです。
ゆにすち!シリーズとは
このシリーズではUnityでSTEAM販売を目指す!略してゆにすち!と銘打ち、モデリングもプログラミングも企画も販売も何から何までぜ~んぶド素人の が、PCゲームを考え、制作して、販売するまでの風景を履歴として残していくものです。
このC#基礎編では、Unityでのコーディングに困らないよう、助走をつけるイメージでプログラムの一般的な知識を中心に学んでいきます。
この記事のポイント!
- コメントは、コード上のメモのこと
- コメントの負荷コストはタダ
- 単一行と複数行の書き方がある
- コードを一時的に無効化することをコメントアウトと呼ぶ
- コメントを上手く使って、可読性の高いコーディングを目指そう!
Contents
コメントとは
コメントとは、ソースコード上に残せるメモのことです。日本語などの全角文字も使用することができます。
一方で、プログラム実行への影響はまったくありません。
気になるのはプログラム実行速度ですが、コメントによる速度影響もありません。
コンパイル時に破棄
コンパイルとは、人が読み書きできるプログラム言語をコンピューターが読み取れる機械語に変換する処理のことです。
正確には、C#はコンパイルにより一旦中間言語(IL)になります。このコンパイルの処理をするときに、コメントは破棄されます。
コンパイルは、Unityのシーンの(再生ボタン)をクリックしたタイミングではなく、事前に行われています。そのため、ゲーム実行時にはコメントは存在していないので破棄処理すらもされません。つまりコメントの実行コストはまったくのゼロということです。
Unityでコンパイルが走るのは、コーディングエディターでスクリプトの編集を保存して、Unityにフォーカスを戻したときです。いつも少し待たされるあの時間にその処理が走っていたのですね。コメントの書き方
2通りの書き方
コメントには、次の2つの書き方があります。
- 単一行コメント
- 複数行コメント
基本的な用途は同じですが、コメントの量や記述場所によって使い分けます。
単一行コメント
単一行コメントは、上の図のように記述します。
2つの連続したスラッシュを書くと、それ以降改行するまでがコメントとして扱われます。
エディターの自動折り返し機能で2行以上になった場合でも、(見た目上複数行に渡りますが)改行されているわけではないのでコメントとしての扱いが続きます。また、プログラムコードの後ろに書くこともできます。
前回作成したFirstScript.csに追記してみましょう。
Debug.Log("Hello, World!"); // コンソールに文字列を表示します
ちなみに、スラッシュの後ろに半角スペースを設けていますが、これは慣習によるものです。スラッシュのすぐ後ろから書き始めても同様に機能します。
スペースありの場合は人が読むことを目的としたコメントとして、スペースなしの場合はコードを無効にするためのコメントアウト(後述)と使い分ける場合もあるようです。複数行コメント
複数行コメントは、上の図のように記述します。
/*
で始まり、*/
で終了します。この区間内で改行しても継続してコメントとして扱われます。
複数行コメントと表現しましたが、/*
、*/
は1行で書いてもよいです。
次のように、コードの間に書くこともできます。
Debug.Log(/* ここに書いてもコメント */ "Hello, World!");
コメントアウト
コメントは前述のとおり、ソースコードに埋め込むメモのことでした。
もう一つ、似た言葉でコメントアウトという表現があります。
コメントアウトは、ソースコードをコメント化することで一時的に無効にすることです。
// Debug.Log("ハロー、ワールド!");
このように一時的に実行コードからコメントに変換することで、コードを残したまま、処理から外してしまうことができます。テスト時やバグの切り分け時に使用します。
VS Codeでは、Shift + /でコメント化することができます。
コメントのすゝめ
プログラミングでは、3日前に書いたコードは、もはや他人が書いたものであり、自身で書いたコードでも時間が経てば読み解くのに難儀します。
前述のとおり、コメントはいくら書いても負荷的にはタダなので、ドンドン活用していきましょう。。。
とはいうものの、コメントが多すぎて逆に可読性を落とすこともあり得ますので適量を身につけたいところです。
未来の自分のためにも、読み返してスッと入ってくるような記述を心がけたいですね!
今回のコード
最後に今回のコードを書いておきます。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class FirstScript : MonoBehaviour {
void Start() {
Debug.Log(/* ここに書いてもコメント */ "Hello, World!"); // コンソールに文字列を表示します
// Debug.Log("ハロー、ワールド!");
}
// Update is called once per frame
void Update() {
}
}
次は、このコードの続きからになりますので、合わせておいてください。
まとめ
今回はコードの可読性に絶大に寄与するコメントの記述方法について解説してきました。
冗長なコメントを残すとかえって混乱のもとですが、面倒に思わずに未来の自分宛てのメッセージを書き残しましょう。
次回予告
Next time on... 【Unity】「算術演算」と優先順位を解説!
次回はよりプログラミング的な内容で、足し算引き算などの演算を解説します。基本的には学校の算数に近い内容ですが、プログラム独自の考え方もあるのでそのあたりをまとめたいと思います。
では、今回はこの辺で。
コメント
コメントを投稿