윈도우 프레젠테이션 파운데이션

윈도우 프레젠테이션 파운데이션(Windows Presentation Foundation)은 윈도우 기반 응용프로그램에서 사용자 인터페이스를 표시하기 위한 목적으로 마이크로소프트에서 만든 그래픽 서브시스템이다. 과거 아발론(Avalon)이라는 코드명으로 불렸으며 최초에 닷넷 프레임워크 3.0의 일부분으로 발표되었으며, 기존의 그래픽 장치 인터페이스 대신 DirectX를 사용한다. WPF는 응용프로그램 개발을 위한 일관성 있는 프로그래밍 모델을 제공하며 사용자 인터페이스와 비즈니스 로직을 분리해준다. XUL이나 SVG와 같은 XML 기반 객체 모델과 유사하다.

WPF는 다양한 인터페이스 요소들을 정의하고 연결하기 위해 XML 기반의 언어인 XAML을 채용하였다. WPF 응용프로그램은 데스크탑에서 단독으로 실행될 수도 있고 웹사이트에 내장된 객체로 서비스될 수도 있다. WPF는 2D/3D 렌더링, 고정 및 가변 문서, 타이포그래피, 벡터 그래픽스, 실시간 애니메이션, 프리렌더링 미디어와 같은 여러 가지 보편적인 사용자 인터페이스들을 통합하는 것을 목적으로 한다. 이러한 요소들은 다양한 이벤트, 사용자 인터랙션, 그리고 데이터 바인딩에 기반하여 연결 및 처리될 수 있다.

WPF 런타임 라이브러리는 윈도우 비스타 및 윈도우 서버 2008부터 모든 버전의 마이크로소프트 윈도우에 기본적으로 포함되어 있다. 윈도우 XP SP2/SP3 및 윈도우 서버 2003 사용자는 필요한 라이브러리를 선택적으로 설치할 수 있다.

마이크로소프트 실버라이트는 어도비 플래시와 유사한 내장 웹 컨트롤들을 제공하며 이는 대부분 WPF의 일부분에 해당한다. 3D 실시간 렌더링은 실버라이트 5 버전부터 제공되었다.

도구 
윈도 프레젠테이션 파운데이션 응용 프로그램을 개발하는 데 이용할 수 있는 개발 도구가 여러 개 있다. 그 가운데 대부분이 베타 품질이며 일부는 상용화되어 있다.
 마이크로소프트 사이더: 비주얼 스튜디오 2005 IDE를 위한 추가 기능 형태로 짤 수 있는 XAML 디자이너로, 윈도 파운데이션 프레젠테이션 응용 프로그램을 작성할 수 있다. 비주얼 스튜디오 2005로부터 CTP 형태로 이용할 수 있어서 비주얼 스튜디오 2005에 RTM 버전에 대한 계획은 없다. 사이더는 비주얼 스튜디오 2008에 통합되어 있다.
 마이크로소프트 익스프레션 블렌드: 2차원/3차원 그래픽스, 텍스트, 폼 콘텐츠가 포함된 WPF 응용 프로그램을 작성하기 위한 캔버스를 제공하는 디자이너 지향 도구이다. 다른 도구에 추가할 수 있는 XAML을 만들어 낸다.
 마이크로소프트 익스프레션 디자인: XAML에 내보낼 수 있는 비트맵, 2차원 벡터 그래픽스 도구이다.

WPF 응용 프로그램 
WPF는 데스크톱의 윈도 응용 프로그램을 위한 차세대 그래픽 API로 고안되어 있다. 다음에는 WPF로 작성된 마이크로소프트 자사 제품 중 일부 또는 다른 서드 파티 회사의 주류 응용 프로그램을 가리킨다.
 마이크로소프트 익스프레션 디자인
 마이크로소프트 익스프레션 블렌드
 야후! 메신저
 노키아 뮤직 PC 베타
 클리어 오피스 스프레드시트
 MuvUnder Cover: The Album Art Sleuth

닷넷 마이크로 프레임워크 
닷넷 마이크로 프레임워크는 XAML에 대한 지원은 없지만 WPF 기반의 GUI 객체 모델을 포함하고 있다.

같이 보기 

 데스크톱 창 관리자
 닷넷 프레임워크 3.0
 컴퓨터 그래픽스
 다이렉트엑스
 윈도 폼

참조

외부 링크 
 WindowsClient.NET: 윈도 폼, 윈도 프레젠테이션 파운데이션
 윈도 프레젠테이션 파운데이션 SDK (MSDN): 소프트웨어 개발 키트

마이크로소프트 API
윈도우 비스타
닷넷 프레임워크