'UI 프레임웍'에 해당되는 글 2건

  1. 2010/11/26 Prism 4.0 공개 (2)
  2. 2009/02/26 PRISM 2.0 정식 출시 (3)

Prism 4.0 공개

프레임웍 2010/11/26 10:48

UI 개발 프레임웍으로 국내 개발자 사이에서도 관심의 대상이 되고 있는 Prism이 4.0이 지난 11월 13일 공개되었다. Prism은Standalone 형태의 Composite Application 개발에 적합한 UI 프레임웍이다. 백엔드의 다양한 리소스로부터 정보를 취합하여 한 화면에서 사용자의 눈높이에 맞도록, 사용자의 접근 권한에 맞도록, 그리고 사용자의 업무 스타일과 맞도록 화면 구성을 하고, 필요한 리소스를 동적으로 로딩하며, 모듈화된 각 업무 단위 사이의 종속성을 최대한 배제할 수 있도록 구성된 UI 프레임웍이다. (Composite Application의 예로 웹의 경우 포털 화면을 생각하면 쉽게 이해가 된다.) Prism 4.0에서 가장 눈에 띄는 특징은 지원 환경이 WPF, Silverlight 뿐만아니라, Windows Phone 7까지 확대되었다는 점이다.

이번 Prism 4.0에 포함되어 제공되는 것들은 아래와 같다.
1. WPF, Silverlight, Windows Phone 7용 라이브러리
   - Signed Assembly
   - 소스 코드 전부
2. 예제와 Reference Implementation 등 소스코드
   - MVVM과 StockTrader RI
   - 10개의 QuickStart 예제 : 신규 (MVVM, Unity, MEF, Navigation, UI composition 등), Prism 2.0 포팅 (Commanding, Event Aggregation, Multi-targeting, Hello World 등)
3. Prism 사용에 대한 개발자 가이드 (PDF 버전은 CodePlex를 통해 다운로드 가능)
4. 커스텀 Prism 라이브러리 만드는 배치파일, Visual Studio에 Prism 라이브러리 등록해주는 배치파일 등

Prism 4.0을 설치하기 위해 필요한 조건은 기본적으로 .NET Framework 4.0과 Visual Studio 2010이다.
Prism 개발과 상관없지만, Silverlight 개발을 위해서는 Microsoft Silverlight 4 Tools for Visual Studio 2010이 설치되어야 한다.

관련 싸이트는 아래와 같다.
Prism 4.0 다운로드
Prism 4.0 개발자 가이드
Prism 4.0 CodePlex 싸이트

설치하고난 후 디렉토리 구조는 아래와 같다. 대충 어떤 내용이 담겨있는지 추측해볼 수 있다.
image

현재 국내에서도 금융쪽에 Prism을 사용하여 진행중인 대규모 WPF 프로젝트가 있는 것으로 확인되고 있으며, 제조쪽에서도 설비 관련하여 Prism의 도입을 검토중인 것으로 파악되고 있다. Windows Phone 7이 시장에서 좋은 평판을 얻고 있고, 국내에 출시가 되는 시점이면 좀 더 많은 레퍼런스가 생길 것으로 기대하고 있다.

Posted by 장현춘

마이크로소프트가 Composite Application Guidance 2.0 (“Prism 2.0”)을 정식 출시하였다. Prism은 사용자 경험을 중시하는 애플리케이션 개발에 있어서 모듈화와 유연성을 담보할 수 있는 설계 및 개발 방식을 지원하는 오픈 소스 기반 (Ms-PL)의 UI 프레임웍이다. Prism 1.0에서는 WPF 기반의 데스크탑 애플리케이션 개발에 촛점을 맞추어 제공되었던 기능들이 Prism 2.0에서는 WPF와 Silverlight를 모두 지원하는 방식으로 확대되었다.

아래 그림에서와 같이 비지니스 기능을 모듈화 시켜 별개의 dll로 구현하고 사용자 요구시에 이를 동적으로 로딩하여 쉘 영역에서 기능을 제공할 수 있도록 설계되었고, 모듈들에서 공통적으로 사용하는 기능들은 오른쪽에 서비스로 분리하여 제공하고 있으며 쉘과 모듈 사이에 연결 고리 역할을 하고 있다. 관련된 모듈과 서비스의 기동이나 라이프사이클 관리를 위해서 컨테이너를 사용하고 있는데, Unity Application block이 기본적으로 탑재되어 있고, Spring 등 원하는 다른 컨테이너가 있을 경우 사용할 수 있다. 

image

Prism과 같이 사용자 경험을 중시하는 애플리케이션을 효과적으로 구현하기 위한 프레임웍이 관심을 끄는 이유는 현재의 IT 흐름과 무관하지 않다. 이전 포스트에서도 잠시 언급했지만, 이 복잡한 세상살이에서 백엔드의 다양한 서비스들, 이 서비스들을 내가 제공하는 것이든, 남이 제공하는 것이든 상관없이 이들 서비스로부터 사용자가 원하는 정보 및 서비스를 사용자가 가장 바람직하다고 느끼는 방식으로, 사용자의 눈높이 맞도록 제공하는 것이 점차 중요시 되고 있다. 사용자에게 있어서 그 서비스가 어디서 왔는지가 중요한 것이 아니라 어떻게 나의 삶을 편하게 하고 어떻게 나의 비지니스에 기여하는 방식으로 제공되는 지가 중요하기 때문에 소위 Composite Application이라는 것이 주목을 받고 있다.

image

Prism은 아래와 같이 WPF와 Silvelight 기반 애플리케이션을 개발할 수 있는 라이브러리를 제공하고 있으며, WPF와 Silverlight의 구현의 차이로 인해 각각 다른 라이브러리를 제공하고 있다. 참고로 Silverlight용 라이브러리에는 얼마전 발표된 Silverlight용 Unity 컨테이너가  포함되어 있다. 또한 WPF와 Silverlight로 구현한 예제들이 포함되어 있어 양쪽 기술이 어떻게 공존하여 사용할 수 있는지 살펴볼 수 있으며, Reference Implementation으로 Stock Trader의 WPF 버전 및 Silverlight 버전이 들어 있다. 아울러 Hands-on lab을 통해 WPF 및 Silverlight용 애플리케이션 제작의 각 단계를 설명하고 있어 쉽게 따라할 수 있다.

image

Prism에 대한 상세한 설명은 아래 싸이트에서 찾을 수 있다. 또한 설치후 함께 포함되어 있는 문서에도 상세히 기술되어 있다.
http://msdn.microsoft.com/en-us/library/cc707819.aspx
http://www.codeplex.com/CompositeWPF

아래 싸이트에서 직접 다운로드 받아 사용해 볼 수 있다.
Composite Application Guidance for WPF and Silverlight – February 2009

Posted by 장현춘