본문 바로가기

IT 살이/04. 기술 - 프로그래밍

02 사용자 경험(User Experience)

이 포스트는 MSDN 메거진에 실린 아티클을 번역한 글의 일부이다.

UX(
사용자 경험)은 애플리케이션의 컨텐트와 그것을 호스팅하는 방법이다. WPF에서는 일반 컨트롤,2D, 3D 그래픽 그리고 애니메이션, 데이터바인딩, 레이아웃, 템플릿등을 사용해서 컨텐트를 출력한다. 그러나 사용자가 그 컨텐트를 보고 그것과 상호 작용을 할 수 있도록 호스팅이 되기 전까지는 거의 쓸모가 없다. 윈도우 애플리케이션에서는 바로 애플리케이션이 컨텐트를 패키징하고 윈도우를 통해서 그것을 출력한다. 이곳이 바로
애플리케이션 모델 개념이 등장하게 되는 문맥이다. 즉 컨텐트 패키징과 출력 방법에 따라 애플리케이션 모델이 구분될 수 있다는 것이다.

WPF 애플리케이션은 두 가지 타입으로 구분될 수 있다. : 독립형(standalone)과 브라우저형(browser, XBAP). 독립형 애플리케이션의 경우는 컨텐트를 자신의 윈도우, 다이얼로그박스, 메시지 박스를 통해서 출력하는 반면, 브라우저 애플리케이션은 브라우저에 호스팅되는 페이지로 컨텐트를 출력한다.

비슷하게, WPF의 컨텐트간의 네비게이션 방법에 있어서도 그 스타일이 구분된다:메뉴 방식과 하이퍼링크방식.  메뉴 기반의 방식은 컨텐트와 기능을 이동하기 위해서 전통적인 데스크탑 애플리케이션에서처럼 메뉴바, 툴바, 윈도우창 그리고 다이얼 로그창을 사용한다. 하이퍼 링크 방식은 웹 애플리케이션과 유사한 네비게이션 경험을 제공한다.

독립형 애플리케이션은 메뉴 기반의 네비게이션 방식이 자연스럽고, 브라우저 애플리케이션은 하이퍼링크 방식의 네비게이션이 어울리겠지만 그렇지만 WPF 애플리케이션은 혼합된 모델도 당연히 가능하다. 많은 경우 독립형 애플리케이션에 하이퍼링크 이동 방식을 부분적으로 추가한다. 물론 모든 이동 방식을 하이퍼링크를 이용할 수 있다. 이동 방식의 조합은 애플리케이션의 가장 편리하다고 느낄 수 있는 타입의 사용자 경험을 기반으로 결정되어야 한다. 애플리케이션이 전달하고자 하는 사용자 경험이 결정된다면 이제 WPF 애플리케이션 모델을 사용할 수 있게 된다.