네임 스페이스에 대해서 알아보도록 하겠습니다. 네임 스페이스는 수 없이 많은 클래스들 간의 충돌을 방지하고자 사용합니다. 비슷한 의미와 역할을 하는 클래스들을 비롯한 개체들은 이름이 비슷하거나 똑같을 수도 있습니다. 특히 큰 프로젝트의 경우 여러 사람이 작업을 진행하게 되는데 이 경우 문제가 여러 곳에서 발생할 수도 있습니다. 그래서 이 네임 스페이스를 활용해 클래스들을 관리하고 사용합니다. c#의 .net 프레임 워크의 경우 무려 11,000여개의 클래스들이 존재함에 따라 네임 스페이스가 적극적으로 활용되고 있습니다.
위 이미지를 보듯 한 네임 스페이스 내에 같은 이름의 클래스가 존재한다면 당연히 오류가 발생하지만 서로 다른 네임 스페이스에 존재하는 같은 이름의 클래스는 충돌이 일어나지 않습니다. 네임 스페이스에 포함된 클래스를 생성하려면 네임 스페이스의 이름과 함께 생성하면 됩니다. 만약 네임 스페이스에 포함된 클래스들이 많이 사용된다면 매번 네임스페이스의 이름을 쓰는 건 부담입니다. 그래서 사용하는 것이 바로 using 키워드입니다.
https://play.google.com/store/apps/details?id=com.goldenegg
사실 네임 스페이스를 알던 모르던 우린 이미 네임 스페이스로 이루어진 구조속에서 코딩을 하고 있습니다.
Test1 네임 스페이스를 using 키워드를 통해 추가해두면 위 예제처럼 Test1이라는 네임 스페이스를 명시하지 않고도 Test1 네임 스페이스에 포함되어 있는 Test 클래스에 접근이 가능합니다.
네임 스페이스 중첩도 가능합니다. 굉장히 큰 프로젝트에선 아마도 많이 활용되지 않을까 생각이 드네요. 이 네임 스페이스를 잘 활용한다면 관련된 개체들을 관리하기 굉장히 편리하겠죠??
'프로그래밍 > c#' 카테고리의 다른 글
c#_43 제너릭 Generics 타입 <T> (0) | 2021.09.19 |
---|---|
c#_42 클래스 Virtual과 Override 가상 메소드(함수) 1 (0) | 2021.09.18 |
c#_null 조건 연산자들 (0) | 2021.09.13 |
c#_null ?? 널? (0) | 2021.09.11 |
c#_41 콜렉션 Collection : 딕셔너리 Dictionary <TKey,TValue> 간단한 사용방법 2 (0) | 2021.08.30 |
댓글