TN_1107: TechNote 1107 도구 상자 프로토타입의 이해, 사용 및 작성
Bill Gibson, 프로그램 관리자
Microsoft Corporation
적용 대상 :
Microsoft Visual Studio 2005 Team System
응용 프로그램 디자이너나 논리 데이터 센터 디자이너에서는 다이어그램의 새로운 컨텐츠 작성에 사용할 수 있는 아이템을 포함한 도구 상자가 지원 됩니다. 이러한 아이템에는 응용 프로그램, 논리 서버, 영역, 끝점(endpoint)등이 있습니다. 이러한 아이템은 단지 다이어그램에 추가할 수 있는 형식을 보여준다고 생각하면 간단하지만, 오해가 있을 수도 있습니다. 실제, 이러한 도구 상자 아이템 (또는 프로토타입)은 더 뛰어난 것으로 도구에서는 독자적인 사용자 지정 프로토타입을 작성하고, 도구 상자에 추가할 수 있습니다. 여기에서는 도구 상자의 프로토타입을 설명하고, 사용자 지정 프로토타입의 작성 방법과 사용 방법을 설명합니다.
도구 상자의 프로토타입 구조
응용 프로그램 디자이너나 논리 데이터 센터 디자이너의 도구 상자에는 이미 설치된 일련의 기본값 프로토타입이 있습니다. 이러한 몇 개의 프로토타입이 다이어그램 위에 드롭되면, 개체가 그 다이어그램 위에 작성됩니다. 도구 상자의 프로토타입은 다이어그램에 아이템을 드롭했을 때에 모델에 붙일 수 있는 모델 개체의 그래프를 보관 유지합니다. 도구 상자의 프로토타입은 캐시 된 클립 보드의 엔트리라고 생각하는 것이 많은 점에서 이해하기 쉬워집니다. 프로토타입은 올바른 문맥에서 사용해야 합니다. 예를 들어, 응용 프로그램을 다른 응용 프로그램에 드롭할 수 없습니다. 프로토타입이 드롭되면, 추가되는 개체에 대상 문맥과의 호환성이 있어, 그 문맥의 기존의 개체와 충돌 하지 않는 것을 확인하기 위해, 다양한 "수정" 규칙이나 유효성 검사 규칙이 적용됩니다. 예를 들어, 끝점(endpoint)을 응용 프로그램에 드롭하는 경우, 우선, 응용 프로그램이 드롭되는 끝점을 지원해야 합니다. 또, 추가되는 끝점의 이름이 끝점 또는 응용 프로그램의 리소스로 이미 사용 된 경우, 그 이름의 변경이 필요한 경우가 있습니다.
도구 상자를 캐시 된 일련의 클립 보드 엔트리로서 취급하는 방법은 용이하고 우수하고, 매우 강력합니다. 다이어그램에서 복사 또는 붙이기를 실시할 수 있는 일련의 모델 개체의 대부분은 나중에 사용하기 위해서 도구 상자에 추가할 수 있습니다.
프로토타입의 사용에 가장 적합한 시나리오의 하나는 응용 프로그램 또는 서버의 초기 구성을 저장하는 기능입니다. 이것에 의해, 디자인에서 출발점으로서 프로토타입을 재사용 할 수 있습니다. .
프로토타입에 의한 같은 형식 변형 작성
도구 상자가 많은 아이템을 사용하여, 각 다이어그램에서 같은 형식의 인스턴스를 작성할 수 있습니다. 이 가치는 응용 프로그램 디자이너의 도구 상자의 초기 구성에서 확인할 수 있습니다. 도구 상자의 두가지 프로토타입에 의해, ASP.NET Web 응용 프로그램의 변형이 작성됩니다. ASP.NET Web 응용 프로그램이라는 라벨이 붙은 프로토타입에서는 기본값 Web 컨텐츠의 끝점(endpoint)을 갖춘 ASP.NET Web 응용 프로그램이 작성되어 ASP.NET 웹 사이트 템플릿이 사용됩니다. ASP.NET 웹 서비스라는 라벨이 붙은 다른 프로토타입에서는 기본값 웹 서비스 끝점을 갖춘 ASP.NET Web 응용 프로그램이 작성되지만, 비어 있는 웹 사이트의 템플릿이 사용됩니다. 어느 경우도 Visual Basic이 기본값 언어로 지정됩니다.
.gif)
그림 1 . 두개의 ASP.NET 프로토타입에 의해 ASP.NET 응용 프로그램이 다른 구성이 작성됩니다
이러한 두가지 프로토타입의 어느 쪽을 사용하는지 관계없이 기본 형식이 같은 응용 프로그램이 작성됩니다. 사용하는 프로토타입에 의해서, 응용 프로그램의 초기 특성과 컨텐츠의 일부가 사전에 정의됩니다. 응용 프로그램을 다이어그램에 추가하면, 이러한 특성을 자유롭게 변경할 수 있습니다.
사용자 지정 프로토타입의 작성
도구 상자에 저장 하는 사용자 지정 프로토타입의 기초로서 임의의 응용 프로그램, 서버 또는 끝점(endpoint)을 사용할 수 있습니다. 예를 들어, 다음과 같은 이유로 사용자 지정 프로토타입을 작성합니다.
- 특정 종류의 응용 프로그램의 기본값 프로그래밍언어를 변경한다.
- 웹 서비스 끝점에서 표준의 WSDL 서비스 및 바인드 네임 스페이스의 값을 설정한다.
- 다수의 서비스에서 사용되는 표준 조작을 몇가지 추가한다.
사용자 지정 프로토타입을 작성하면, 기본값 프로토타입을 삭제하고, 독자적인 프로토타입만을 사용하도록 선택할 수 있습니다. 프로토타입은 파일에 저장 되기 위해, 팀내 또는 조직간에 다른 사용자와 공유할 수 있습니다.
사용자 지정 프로토타입을 작성하려면, 도구 상자에 추가하는 아이템을 선택하고, [Add to Toolbox] 를 선택합니다. 프로토타입의 도구 상자명, 파일 이름 및 비트맵을 지정하도록 요구하는 메시지가 표시됩니다.
복수의 아이템을 선택해도 한개의 도구 상자 프로토타입이 작성됩니다. 이것은 사용자 지정 프로토타입 작성의 가장 강력한 측면의 한개입니다. 이것에 의해, 응용 프로그램, 서버 또는 끝점의 그룹이 도움이 되는 패턴을 사전에 정의할 수 있어 한번의 조작으로 다이어그램에 추가할 수 있습니다. 복수의 아이템을 선택하는 경우는 그것들이 같은 문맥에 포함되는 것을 확인해야 합니다. 예를 들어, 복수의 끝점은 같은 응용 프로그램, 논리 서버 또는 영역에 포함될 필요가 있습니다. 서버 및 영역은 같은 부모 영역에 포함해야 합니다. 또, 끝점은 다른것과 혼재시킬 수 없습니다. 선택된 응용 프로그램, 서버 또는 영역이 접속되면, 붙일 수 있었던 개체도 접속됩니다. 선택된 응용 프로그램이 선택되어 있지 않은 응용 프로그램에 소비자 끝점 경유로 접속되는 경우, 그 소비자 끝점이 프로토타입에 포함할 수 있는 구성됩니다. 또, 프로토타입의 사용시에 다이어그램 위에 관련 공급자가 존재하는 경우, 그 공급자에 접속됩니다.
.gif)
그림 2. 한 개의 도구 상자 프로토타입에서 응용 프로그램의 복잡한 패턴을 추상화 할 수 있습니다
이 기능을 사용하고, 데이터베이스에 접속되는 웹 서비스 끝점에 링크되는 ASP.NET Web 응용 프로그램을 포함한 데이터베이스 지원 서비스등의 패턴을 작성할 수 있습니다. 또, 클라이언트 서비스데이터 기반의 3 층의 패턴을 작성할 수도 있습니다. 논리 데이터 센터 디자이너에서는 구성 및 접속된 논리 서버를 사용하고, 표준적인 영역을 작성할 수 있습니다. 가능성은 무한합니다.
요약
분산 시스템 디자이너에서는 다이어그램 내에서 개체에서 사용자 지정 도구 상자 아이템 (프로토타입)을 작성하여, 다른 사용자와 공유할 수 있는 강력한 메커니즘이 제공됩니다. 프로토타입은 한개의 응용 프로그램, 서버 및 끝점을 포함할 수 있습니다. 또는 접속형 개체의 복잡한 패턴을 표현할 수 있습니다.