C#_ Unity Game programming
C# - 네임스페이스를 사용하는 이유
doyyy_0
2024. 4. 16. 15:21
네임스페이스란?
네임스페이스는 관련 있는 클래스, 인터페이스, 함수 및 기타 식별자를 그룹화하여 코드의 조직을 돕고, 이름 충돌을 방지하는 코드 구조화 도구입니다. 네임스페이스는 라이브러리나 애플리케이션의 독립된 모듈성을 제공하고, 유지 관리를 용이하게 합니다.
네임스페이스의 필요성
- 이름 충돌 방지: 서로 다른 라이브러리 또는 모듈에서 동일한 이름(예를들어 같은 이름의 클래스)을 사용할 수 있게 해줍니다. 이는 특히 대규모 프로젝트나 여러 외부 라이브러리를 사용할 때 유용합니다.
- 코드 관리의 용이성: 네임스페이스를 사용하면 코드를 논리적인 단위로 구분하여 관리할 수 있습니다. 이는 프로젝트의 가독성과 유지보수성을 향상시킵니다.
네임스페이스 사용 방법
namespace MyProject
{
class MyClass
{
public void MyMethod()
{
Console.WriteLine("Hello, World!");
}
}
}
위 예제에서 MyProject는 네임스페이스이며, MyClass는 이 네임스페이스에 속하는 클래스입니다.
다중 네임스페이스 예제
네임스페이스를 사용하여 동일한 이름의 클래스를 다르게 구현할 수 있는 예제:
namespace LibraryOne
{
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public void Greet()
{
Console.WriteLine($"Hello, I'm {Name} from Library One.");
}
}
}
namespace LibraryTwo
{
public class Person
{
public string Name { get; set; }
public string Email { get; set; }
public void Greet()
{
Console.WriteLine($"Hello, I'm {Name} and my email is {Email}.");
}
}
}
예제 사용 :
var personOne = new LibraryOne.Person { Name = "Alice", Age = 25 };
var personTwo = new LibraryTwo.Person { Name = "Bob", Email = "bob@example.com" };
personOne.Greet();
personTwo.Greet();
네임스페이스를 사용하는 이점
- 모듈성: 각 네임스페이스는 라이브러리 또는 애플리케이션의 특정 부분을 나타내므로, 코드를 모듈화하여 개발할 수 있습니다.
- 유지 관리: 관련 기능을 함께 그룹화함으로써 코드의 유지 관리가 용이해집니다.
- 재사용성: 네임스페이스는 코드의 재사용성을 촉진시키며, 다른 프로젝트에서도 동일한 네임스페이스를 재사용할 수 있습니다.