C#에서는 네임스페이스라는 것이 있습니다.
다른 언어에도 비슷한 것들이 있죠. 예를 들면 자바에서는 패키지가 있죠..
뭐 언어마다 각각 만들어진 이유가 있고, 그 쓰임새가 다르지만 대부분 원리는 비슷해요.

네임스페이스는 과연 무슨 기능을 하는 것일까요?

코딩을 하다보면 프로그램이 커지고 한 프로그램 안에서 같은 이름의 클래스를 생성할 수 있죠..
컴퓨터는 이름이 같은 클래스는 같은 클래스로 인식하기 때문에 클래스의 이름은 유일한 키워드를 사용해야 합니다.
하지만 이때 같은 이름을 같은 클래스를 여러개 만들 수 있는데요. 
네임스페이스를 이용하면 가능합니다. 

네임스페이스는 클래스보다 위에 있는 레벨로 프로그램의 전체 구조를 표현하는 키워드입니다. 
네임스페이스는 여러 단어를 조합해서 만들 수 있어요. 

namespace 라는 키워드를 선언하고 뒤에 자신이 원하는 단어를 적어주면 됩니다. 

namespace project01 
namespace project01.myName
이런식으로 네임스페이스를 다르게 만들 경우 같은 이름의 클래스를 사용할 수 있게 됩니다. 
일반적으로 네임스페이스 결정하는 방법이 있는데요.

namespace 회사명.팀명.**.** 이런 식으로 사용하거나 팀명 뒤에 프로젝트 이름을 사용하기도 합니다. 

하지만 절대적으로 이렇게 해야한다는 원칙은 없습니다. 단순히 구분만 가능하면 되는거니까요.

네임스페이스를 더 쉽게 이해하려면 폴더구조를 생각하면 됩니다. 
사진을 폴더로 정리를 한다면 
나라별로 폴더를 만들고 그 폴더안에 날짜로 나누고 필요하면 더 자세하게 나누듯이 
네임스페이스도 그렇게 나누면 됩니다.


+ Recent posts