using - 해당되는 글 1건
크리에이티브 커먼즈 라이선스
Creative Commons License
네임스페이스의 기본적인 기능은 명칭의 선언 영역을 격리하여 명칭끼리의 충돌을 방지하는 것이지만 클래스를 기능별로 분류하는 역할도 한다. 닷넷의 라이브러리는 워낙 방대하기 때문에 모든 클래스들을 같은 범위에서 정의하면 명칭 충돌뿐만 아니라 명칭 검색 시간도 굉장히 오래 걸릴 것이다. 그래서 클래스들을 기능에 따라 그룹을 분류하여 네임스페이스에 체계적으로 정리해 놓았다. 닷넷의 루트 네임스페이스는 System이며 System안에 기능별로 네임스페이스가 나누어져 있고 이 안에 클래스들이 정의되어 있다. 네임스페이스가 3중, 4중으로 중첩되어 있는 경우도 많다. 닷넷 라이브러리의 주요 네임스페이스는 다음과 같다. 이 네임스페이스 체계는 닷넷이 정의하는 것이므로 언어에 상관없이 동일하다. 

(네임스페이스)System - (설명)타입, 메모리 관리 등 핵심 클래스 
(네임스페이스)System.Collections - (설명)배열, 연결 리스트 등의 컬렉션 클래스 
(네임스페이스)System.IO - (설명)파일 입출력 및 네트워크 관련 클래스 
(네임스페이스)System.Windows.Forms - (설명)윈도우즈 폼과 컨트롤
(네임스페이스)System.Drawing - (설명)GDI+ 
(네임스페이스)System.Web - (설명)웹 개발에 관련된 클래스 
(네임스페이스)System.Xml - (설명)XML 관련 클래스들 
(네임스페이스)System.Security - (설명)보안, 암호, 권한 관련 클래스 
해당 기능을 쓰고 싶다면 기능을 제공하는 클래스들의 소속 네임스페이스에 대한 using 선언을 해야 하며, 그러기 위해서는 어떤 클래스가 어떤 네임스페이스 소속인지를 알아야 한다. 

using System; 
선언은 System 네임스페이스 안에 정의된 클래스들을 사용할 것이므로 준비하라는 지시사항이다. 컴파일러는 이 선언을 읽고 이후 나타나는 명칭들이 using 선언된 네임스페이스에 있는지 검색해 볼 것이다. using선언은 C의 #include와 유사해 보이지만 물리적인 파일을 포함하는 것이 아니라 논리적인 네임스페이스를 참조한다는 점이 다르다. 
using 선언은 꼭 필요한 것들만 선언하는 것이 좋다. 닷넷 라이브러리의 모든 네임스페이스들을 using 선언해 놓으면 명칭들을 자유롭게 쓸 수 있어서 좋기는 하겠지만 컴파일러가 명칭을 찾아야 할 범위가 넓어지므로 컴파일 시간이 오래 걸리고 명칭 충돌 확률이 높아진다.  
저작자 표시
신고

'Study > C#' 카테고리의 다른 글

[C# : 배열의 메서드]  (0) 2010.07.25
[C# : 콘솔의 여러가지 기능]  (0) 2010.07.25
[.NET : 닷넷의 네임스페이스]  (0) 2010.07.25
[.NET : 닷넷의 장점]  (0) 2010.07.25
[.NET : 닷넷의 구성요소]  (0) 2010.07.25
[.NET: 닷넷의 구조]  (0) 2010.07.25
Trackback 0 | Comment 0

강군v's Blog is powered by Daum & tistory

 

티스토리 툴바