Matthew A. Stoecker
Microsoft Corporation
2004년 5월
적용 대상:
Visual Studio 2005
요약: Visual Studio Class Designer를 사용하면 클래스 구조와 관계를 시각화하고 시각 디자인 환경에서 새 클래스를 만들고 클래스를 쉽게 refactor할 수 있습니다. 이 백서에서는 이러한 작업에 대해 설명합니다(7페이지/인쇄 페이지 기준).
참고 이 문서는 해당 제품 릴리스의 제조 이전에 개발되었으므로 여기에 포함된 정보가 출시 제품의 내용과 완전히 일치함을 보증하지는 못합니다. 여기서 제공되는 정보는 이 문서가 작성된 당시의 제품 정보를 기준으로 하며 계획 목적으로만 사용해야 합니다. 정보는 언제든지 사전 예고 없이 변경될 수 있습니다. Microsoft가 이 설명서 본안에 관련된 특허권, 상표권, 저작권 또는 기타 지적 재산권 등을 보유할 수도 있습니다. 서면 사용권 계약에 따라 Microsoft로부터 귀하에게 명시적으로 제공된 권리 이외에, 이 설명서의 제공은 귀하에게 이러한 특허권, 상표권, 저작권, 또는 기타 지적 재산권 등에 대한 어떠한 사용권도 허여하지 않습니다.
목차
소개
시각 클래스 디자이너를 사용해야 하는 이유
Visual Studio Class Designer
Visual Studio와의 통합
결론
소개
Visual Studio Class Designer는 CLR(공용 언어 런타임)을 위한 완전한 기능을 갖춘 시각 디자인 환경입니다. Visual Studio Class Designer를 사용하면 클래스 및 기타 유형의 구조를 시각화하고 이 시각 표현을 통해 소스 코드를 편집할 수 있습니다. 클래스 다이어그램의 변경 내용은 즉시 코드에 반영되며 코드의 변경 내용은 즉시 디자이너의 모양에 영향을 줍니다. 디자이너와 코드 간의 이러한 동기 관계를 통해 복잡한 CLR 유형을 시각적으로 쉽게 만들고 구성할 수 있습니다.
Class Designer에는 코드를 refactor하고 식별자 이름을 쉽게 바꾸고 메서드를 다시 정의할 수 있는 특수 기능이 들어 있습니다. 클래스와 구조도 자동으로 생성할 수 있으며 스텁을 자동으로 생성하여 인터페이스를 구현할 수 있습니다.
마지막으로, Class Designer는 코드 베이스 영역을 동료에게 쉽게 전달할 수 있는 통신 도구로 사용할 수도 있습니다. 클래스 다이어그램을 인쇄하거나 이미지로 저장하여 HTML 페이지나 PowerPoint 프레젠테이션으로 표시할 수 있습니다.
그림 1. Class Designer
시각 클래스 디자이너를 사용해야 하는 이유
소프트웨어를 디자인하는 작업은 매우 어렵고 복잡합니다. 초기 디자인 단계에서 코드 검토, 최종 제품 문서화에 이르기까지 개발 주기 동안 모든 시점에서 문제가 발생합니다. 시각 클래스 디자이너는 전체 개발 주기에서 유용하며 다음과 같은 시나리오를 예로 들 수 있습니다.
-
기존 코드 이해: 기존 코드 베이스는 복잡하고 혼란스러울 수 있습니다. 시각 클래스 디자이너를 사용하면 기존 클래스 계층 구조를 그래픽으로 탐색하고 각 클래스 간의 관계를 파악할 수 있습니다.
-
클래스 디자인: 시각 클래스 디자이너를 사용하여 소프트웨어를 그래픽으로 훌륭하게 디자인하고 구현할 수 있습니다.
-
코드 검토 및 refactoring: 시각 클래스 디자이너는 코드 검토 및 refactoring을 위한 강력한 도구입니다. 기존 코드 다이어그램에 검토용 주석을 추가할 수 있으며 디자이너로 코드를 refactor하여 시간을 절약할 수 있습니다.
-
문서화를 위한 클래스 다이어그램: 클래스 다이어그램을 사용하여 상속 트리를 그래픽으로 표시함으로써 기존 클래스 계층 구조를 문서화할 수 있습니다. 또한 클래스 다이어그램은 전자 메일이나 시각적 프레젠테이션을 통해 동료와 아이디어를 교환하는 경우에도 유용합니다.
Visual Studio Class Designer
Visual Studio Class Designer는 .NET Framework용 통합 디자인 기능을 갖춘 시각적 코드 디자인 도구입니다. Class Designer의 시각적 기능은 CLR과 밀접하게 관련되어 있습니다. 클래스, 구조, 인터페이스 등의 CLR 모양은 각각의 특성을 나타내는 모양으로 시각적으로 구별되도록 표현됩니다. 더욱이 다이어그램의 용어는 특정 언어와 관련이 있습니다. 예를 들어 Visual Basic에서는 Public, Private 및 Friend 액세스 수준으로 작업할 수 있습니다. 반면 C#에서는 public, private 및 internal로 표시됩니다. Class Designer와 CLR의 견고한 통합을 통해 Class Designer는 .NET Framework를 사용하여 클래스를 만들 수 있는 이상적인 도구가 되었습니다.
Visual Studio Class Designer는 위에서 언급한 모든 주요 시나리오를 위한 기능을 제공하므로 전체 개발 주기에 걸쳐 적절히 사용할 수 있습니다. 예를 들면 다음과 같습니다.
-
기존의 코드 이해: Visual Studio Class Designer를 사용하여 클래스 간의 관계를 쉽고 빠르게 확인할 수 있습니다. 시각적으로 확인하고 기존 유형에 친숙해질 수 있게 함으로써 기존 코드의 상속 계층 구조를 확인할 수 있을 뿐 아니라 참조된 유형 및 .NET 어셈블리도 확인할 수 있습니다.
-
클래스 디자인: Visual Studio Class Designer를 사용하여 클래스 및 클래스 계층 구조를 빠르게 디자인할 수 있습니다. 자주 사용하는 끌어서 놓기 기능을 사용하여 코드 편집기와의 동기화를 유지하면서 클래스 다이어그램을 만들 수 있습니다. 클래스 다이어그램을 변경하면 코드에 바로 반영되며 반대의 경우도 마찬가지입니다. 클래스 다이어그램은 항상 코드의 현재 상황을 표시합니다.
-
코드 검토 및 refactoring: Visual Studio Class Designer는 코드 검토 및 refactoring을 위한 강력한 도구입니다. 이후의 작업을 위해 기존 코드 다이어그램에 주석을 추가할 수 있으며 기본으로 제공되는 refactoring 기능을 사용하여 기호 이름 바꾸기, 속성 필드 캡슐화 등의 일반 작업을 빠르고 편리하게 수행할 수 있습니다.
-
문서화를 위한 클래스 다이어그램: 기존 클래스 다이어그램을 인쇄하거나 이미지로 저장하여 HTML 페이지나 Microsoft PowerPoint 프레젠테이션으로 표시하는 등 다양한 방법으로 표시할 수 있습니다.
Class Designer 를 사용하여 클래스 만들기
프로젝트에서 Class Designer를 사용하여 클래스를 쉽게 만들고 구성할 수 있습니다. 클래스 다이어그램은 실제로 코드의 현재 상황을 표시합니다. 다이어그램의 변경 내용은 코드와 자동으로 동기화되며 반대의 경우도 마찬가지입니다. 도구 상자에서 Class Design 표면으로 클래스를 끌어서 놓는 방법으로 간단한 클래스를 만들 수 있습니다. 프로젝트에 클래스를 만든 후에는 코드 편집기를 열고 코드를 직접 새 클래스에 추가할 수 있습니다. 변경한 내용은 클래스 다이어그램에 반영됩니다.
클래스를 만든 후 Class Details 창을 사용하여 구성원을 추가할 수 있습니다. 예를 들어 메서드를 추가하려면 Class Details 창에서 <add method>를 클릭하고 메서드 이름을 입력합니다. 그런 다음 반환 유형, 액세스 수준을 지정하고 메서드에 대한 주석을 추가할 수 있습니다. 메서드를 만든 후에는 매개 변수 이름을 지정하고 유형, 한정자 및 주석을 지정하여 메서드를 먼저 추가하는 것과 비슷한 방법으로 메서드 이름에 매개 변수를 추가할 수 있습니다. 메서드가 추가되는 것과 같은 방식으로 속성, 필드 및 이벤트가 추가됩니다. 트리 컨트롤을 사용하여 메서드를 편집하는 작업은 코드 편집기에서 입력하는 것과 매우 유사합니다. 동일한 키 입력으로 셀을 탐색할 수 있으며 IntelliSense 도움말을 사용할 수 있습니다.
인터페이스 구현
Class Designer를 사용하여 클래스에서 인터페이스를 쉽게 구현할 수 있습니다. 사실, 인터페이스가 Class Designer 표면에 표시된 경우 클래스에서 인터페이스로 상속 선을 그려서, 클래스를 상속할 때 사용하는 절차를 똑같이 사용하여 구현할 수 있습니다. 그러나 인터페이스가 Class Designer에 표시되지 않은 경우에도 쉽게 구현할 수 있습니다. 클래스 보기에서 구현할 클래스로 인터페이스를 끌어서 놓으면 됩니다. 인터페이스에 정의된 메서드에 대해 메서드 스텁이 자동으로 생성됩니다. 일단 구현된 후에는 코드 편집기에서 특정 구현 코드를 추가할 수 있습니다.
상속 계층 구조 시각화
Class Designer를 사용하여 프로젝트에서 상속 계층 구조를 시각화할 수 있습니다. 상속된 클래스의 기본 클래스를 표시하려면 클래스의 헤더 영역을 마우스 오른쪽 단추로 클릭하고 Show Base Class를 클릭합니다. 그러면 다이어그램에 기본 클래스가 나타납니다.
기존 클래스에서 상속되는 클래스를 표시하려면 클래스의 헤더 영역을 마우스 오른쪽 단추로 클릭하고 Show Derived Types를 선택합니다. 파생된 클래스가 상속 선으로 클래스에 연결되어 다이어그램에 나타납니다.
Visual Studio와의 통합
Class Designer는 Visual Studio 2005 Team System과 완벽하게 통합됩니다. 일반 Visual Studio 도구를 사용할 때와 같은 공간에서 같은 방법으로 친숙하게 Class Designer로 작업할 수 있습니다. Class Designer에서 작업할 경우 친숙한 끌어서 놓기 작업을 통해 액세스할 수 있는 Class Designer 도구가 도구 상자에 포함되어 있으면 Class Details 및 Properties 창에서 유형 구성원에 액세스할 수 있습니다. Solution Explorer, Class View 등의 표준 Visual Studio 도구 창에서도 끌어서 놓기 기능을 사용할 수 있습니다. Class Designer에서 변경한 내용은 모두 해당 코드 파일과 즉시 동기화됩니다. 그런 다음 Visual Studio 코드 편집기를 사용하여 정상적으로 이 코드 파일을 열어서 편집할 수 있습니다.
클래스 다이어그램
클래스 다이어그램은 변경을 통해 계속 업데이트되는 현재 코드 보기입니다. 클래스 다이어그램에는 기존 프로젝트의 클래스가 표시됩니다. 클래스 다이어그램을 사용하여 프로젝트에서 클래스 간의 관계를 시각화하고 개별 클래스에 구성원을 추가 및 편집할 수 있습니다. 클래스 다이어그램 파일은 프로젝트의 일부로서 계속 남아 있으므로 코드를 그래픽으로 볼 때 항상 사용할 수 있습니다.
Project 메뉴에서 New Item을 선택하고 클래스 다이어그램을 선택하여 기존 프로젝트에 새 클래스 다이어그램을 추가할 수 있습니다. 클래스 다이어그램은 프로젝트의 일부라기보다는 클래스를 만들고 편집하는 과정을 돕는 도구입니다. 클래스를 만든 후에는 Class View에서 클래스 디자인 표면으로 끌어서 놓는 방법으로 Class Designer에 기존 클래스를 추가할 수 있습니다. 또한 도구 상자에서 Class Designer로 끌어서 놓는 방법으로 새 클래스 및 기타 유형을 추가할 수 있습니다.
Class Designer에 추가한 후 클래스 및 기타 유형은 선택하고 처리할 수 있는 도형으로 표시됩니다. Class Designer에서 임의의 도형을 선택하면 상세 정보가 Class Details 창에 표시됩니다. 클래스 다이어그램 자체에는 시각적 정보만 저장되며 코드 내용에 대한 정보는 포함되지 않습니다. 클래스 다이어그램 파일을 삭제해도 코드는 손실되지 않습니다.
그림 2. 클래스 다이어그램
도구 상자
클래스 다이어그램이 표시되면 도구 상자에서 새 구성원을 클래스 다이어그램에 추가할 수 있습니다. 도구 상자에는 클래스 다이어그램에 추가할 수 있는 클래스, 구조, 대리자, enum 및 기타 유형이 포함되어 있습니다. 도구 상자에서 유형이 추가되면 해당 코드 및 코드 파일이 프로젝트에 추가됩니다.
그림 3. 도구 상자
Class Details 창
Class Details 창에는 Class Designer에 표시되는 유형이 가진 메서드, 속성, 필드 및 이벤트가 표시됩니다. Class Details 창을 사용하여 Class Designer에 있는 클래스 구성원이나 구조를 신속하게 편집할 수 있습니다. 예를 들어 메서드의 반환 유형을 변경하거나 매개 변수를 추가하거나 액세스 수준을 변경할 수 있습니다. Class Details 창에서 변경한 내용은 모두 코드에 즉시 반영됩니다.
그림 4. Class Details 창
결론
Class Designer는 Visual Studio 2005를 위한 새 도구로서, 프로젝트에서 클래스 및 인터페이스를 신속하게 만들고 구성할 수 있게 합니다. 이 백서에서는 기존 코드 이해, 클래스 디자인, 코드 검토 및 refactoring, 문서화를 위한 다이어그램 사용 등 Class Designer를 사용할 수 있는 가장 기본적인 시나리오에 대해 설명했습니다. Class Designer의 기능에 대해 더 자세히 배워서 이 새 도구를 활용하면 소프트웨어를 개발할 때 유용할 것입니다.
최종 수정일: 2004년 8월 3일
출처 : http://www.microsoft.com/korea/msdn/library/ko-kr/dev/vstudio/clssdsgnr.aspx
'Programming' 카테고리의 다른 글
Settings in OpenXML (0) | 2009.03.12 |
---|---|
What’s up with all those “rsids”? (0) | 2009.03.12 |
Office Online 전체에서 "Open XML"에 대해 검색한 결과 (site link) (0) | 2009.03.11 |