그냥저냥

(1) WPF 개요 본문

공부/WPF

(1) WPF 개요

오양J 2019. 6. 11. 14:30

 WPF(Windows Presentation Foundation)는 데스크탑 UI를 위한 툴킷이다. 이전의 윈도우 폼 개발자들은 다양한 API(윈도우 폼, GDI+, DirectA API, Windows Media Player 등)들과 객체를 알아야만 했다. 이러한 문제를 해결하기 위해 다양한 프로그래밍 모델을 하나로 합쳐 WPF라는 통합된 프로그래밍 모델이 개발되었고 윈도우 컨드롤 만들기, 2D, 3D 그래픽, 스트리밍 비디오, 플로우 문서 지원 기능을 WPF를 통해 구현할 수 있게 되었다.

 

UI와 코드의 분리

 WPF의 장점 중 하나는 윈도우 애플리케이션의 로직과 UI가 완벽하게 분리된 것이다. XAML을 이용하면 마크업 언어를 이용해서 UI를 정의하는 것이 가능하다. 이 마크업은 코드와 연결되어 관리할 수 있는 핵심적인 기능을 제공해주고 있다.

 

 WF(Windows Workflow Foundation) 기술 같은 경우 XAML을 이용해서 액티비티를 만드는 것이 가능하다. 이와 같이 XAML을 이용해서 닷넷의 객체구조를 표현할 수 있다.

 XAML은 UI 개체를 쉽게 정의할 수 있게 해줄 뿐만 아니라 그래픽 렌더링, 애니메이션, 데이터 바인딩, 멀티미디어와 같은 다양한 기능 또한 쉽게 구현할 수 있다. 또한 WPF 기반으로 커스텀 컨트롤을 만들 때 쉽게 구현할 수 있다는 장점이 있다. 윈도우 폼과 다르게 컨트롤의 이벤트나 특정 동작을 변경해야 할 경우라면 WPF의 커스텀 컨트롤 라이브러리를 어쩔 수 없이 다시 컴파일 할 수 있겠지만 그게 아닌 단순하게 컨트롤의 모양이나 애니메이션과 같은 부분을 수정하는 경우 마크업을 이용해서 쉽게 수정할 수 있다.

 

  WPF 서비스는 DirectX엔진을 통해서 렌더링되기 때문에 WPF는 윈도우 비스타 기반의 환경에서 비디오 카드의 성능을 최적화할 수 있다. 비스타 기반에서 그래픽의 충돌이 일어나는 경우 OS 전체가 다운되는 일이 없다는 장점도 있다.

 

참고: http://www.hoons.net/Lecture/View/554

Comments