더북(TheBook)

프로그램 규모가 커짐에 따라 클래스 이름이 동일하여 충돌이 발생할 수도 있습니다. Foo라는 회사 또는 개발자가 Car 클래스를 설계했는데, Bar라는 회사 또는 개발자도 Car 클래스를 설계했다면 이를 하나의 프로젝트로 합쳤을 때 클래스 이름이 동일하여 충돌이 발생합니다. 이때는 도메인 이름 또는 제품 이름으로 네임스페이스를 만들어 클래스를 감싸 주면 이름 충돌이 발생하지 않습니다.

네임스페이스가 적용된 클래스를 호출할 때는 네임스페이스.클래스; 형태를 사용합니다.

닷넷 코어 또는 닷넷 프레임워크에 내장된 모든 클래스는 특정 네임스페이스에 속해 있는 것처럼 클래스를 처음 설계할 때부터 네임스페이스를 함께 고민해서 만들어야 합니다.

이 책에서는 지면을 절약하고자 파일 하나에 Foo.Car 클래스, Bar.Car 클래스, NamespaceNote 클래스 세 가지를 작성했습니다. 실제로 프로그램을 만들 때는 각 클래스를 다른 파일로 관리하길 권장합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.