본문 바로가기

Programming/.NET

WPF vs Winform 특징 정리

반응형


작년에 면접에서 받았던 질문 중 하나인 WPFWinform의 특징 정리


두 프레임워크는 같은 목적(윈도우 응용프로그램 개발)을 수행하지만 특성에서 차이가있다.


Winform은 Windows 표준 컨트롤을 베이스로 하지만

WPFWindows 표준 컨트롤에 의존하지 않는다.


하나의 예시로 이미지가있는 버튼을 생각해보면

이 컨트롤은 Windows 표준 컨트롤이 아니므로 Winform에서 제공하지 않는다.(기본적으론)

원한다면 타사 컨트롤을 사용하거나 직접 만들어야 한다.

반면 WPF는 button컨트롤 안에 Image컨트롤을 넣으면 된다.


이러한 WPF의 유연성은 Winform이 작업 중 특정 컨트롤을 필요로하는 시나리오로 부터 만들어졌다.

다시말해 Winform은 보다 간단한 작업을 하는데 생각보다 많은 시간을 투자해야할 수 있다.


그 외 특성

WPF

MVVM 패턴을 사용. View(UI)와 ViewModel(Business Logic)의 보다 명확한 분리가 가능

xaml을 이용해 GUI를 보다 쉽게 만들 수 있고 디자이너, 프로그래머 작업 분할에 용이함

더 나은 GUI를 위해 하드웨어가속 사용가능

유연성이 뛰어나 새 컨트롤 작성없이 할수있는것의 폭이 넓음


Winform

레퍼런스가 많고(오래되서) 많은 테스트를 거쳤음. 

(이걸 장점으로 삼기엔 WPF도 충분한 테스트를 거쳤다고 보여짐)

무료로 얻을 수 있는 서드파티 컨트롤이 많음









반응형