名前空間

名前空間とは

Unityで作成しているプログラムが大きくなってくると、

1
2
3
4
5
6
7
8
namespace Enemy {
	public class Controller1 : MonoBehaviour {
		...
	}
	public class Controller2 : MonoBehaviour {
		...
	}
}

このプログラムは下記のようになっています。

  • namespaceはこの後記載しているプログラムが名前空間の設定である事を宣言しています。
  • Enemyはこの名前空間の名前で、自由に名前をつける事が可能です。
  • namespace Enemyに続く{}の中に、その名前空間に属するクラスを記述していきます。異なる名前空間の中でならば、クラス名が重複してもひとまず問題はありません。
  • サンプルとしてController1Controller2などのクラスがある場合、このように記載します。

上記の名前空間を使用したクラスはプログラム上ではEnemy.Controller1Enemy.Controller2などのように呼び出す事が可能です。

また、クラスの項で説明したusingを使用して名前空間をロードする事で、Enemyを省略して使用する事が可能になります。

1
using Enemy;

その際、同じプログラム上にロードしている複数の名前空間上で同名のクラス名があった場合、コンパイラがエラーが発生してしまいますので気をつけましょう。