C#
[Unity] Namespace ( 네임 스페이스 )
EveryDay.DevUp
2020. 6. 16. 23:04
● namespace 란?
: 클래스 또는 메서드, 변수의 범위를 정의해서 사용할 수 있는 것으로 대규모 프로젝트에서 개발자가 여러명일 경우 또는 외부에 공유되는 모듈 형태의 코드에서 사용된다.
: namespace를 정의한 코드 영역과 namespace 밖의 코드 영역은 분리되기 때문에 같은 변수 이름에 같은 메소드 이름을 사용할 수 도 있다. 같은 이름이지만 namespace에 의해 구분할 수 있기 때문에 사용이 가능하다.
namespace AAA
{
public class TestA
{
}
}
namespace BBB
{
public class TestA
{
AAA.TestCode.TestA testA; /// AAA.TestA
TestA testa; /// BBB.TestA
}
}
: using UnityEngine과 같이 사용하는 것이 namespace를 사용하는 예가 될 수 있다. UnityEngine의 클래스나 메서드를 사용하기 위해서 필요한 부분이다.
● namespace 사용 방법
namespace AAA
{
public class TestA
{
}
}
namespace BBB
{
public class TestB
{
AAA.TestA testA;
}
}
▶ namespace 뒤에 사용하고자 하는 이름을 정의하면 { }로 묶이는 코드 영역이 namespcae 영역으로 묶이게 된다.
▶ 특정한 namespace를 사용하기 위해서는 using AAA, 또는 AAA.을 사용하면 된다.
▶ namespace를 이용하여 특정한 namespace안에 다시 namespace를 정의할 수 있다. 이때 하위 namespace는 상위 namespace. 으로 접근이 가능하다.
namespace AAA
{
namespace TestCode
{
public class TestA
{
}
}
}
namespace BBB
{
public class TestB
{
AAA.TestCode.TestA testA;
}
}