이번 글은 C# WPF 프로그래밍을 하면서 이론적인 부분이 많이 부족해서 다시 정리하려고 합니다.
1. WPF
- Windows Presentation Foundation
- WPF는 보다 다양한 사용자 인터페이스를 제공한다.
2. WPF는 Application FrameWork 이다.
- FrameWork : 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스를 제공하는 것
- FrameWork : software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user-written code, thus providing application-specific software
3. 프레임워크의 장단점
- 장점 : 효율적(처음부터 모든 것을 만들지 않아도 되니, 생산성이 높음)
품질(이미 검증된 코드를 사용하기 때문에 품질을 포증)
유지보수(알려진 구조로 소프트웨어가 설계됨)
- 단점 : 프레임워크를 배워야만함
구조 자체를 바꿀 수 없음(유연성이 떨어짐)
4. GUI 프로그래밍
- 콘솔 응용 프로그램과의 차이 : 콘솔 프로그램은 Main함수에서 순차적으로 프로그램의 흐름을 제어
- GUI 프로그램은 Event Driven Program
- 사용자의 입력 이벤트에 따라 프로그램이 제어
- 이벤트가 발생할 경우, 이벤트를 처리하는 이벤트 핸들러가 필요
- 이벤트 핸들러는 콜백 함수
- GUI 프로그래밍을 위한 프레임워크가 객체지향 프로그래밍 기반으로 설계
- 설계와 구현의 재사용 방법은 상속과 오버라이딩을 사용한다.
- 프레임워크는 GUI 프로그램이 동작하는 방식을 모두 설계하여 제공하며, 사용자는 자신이 원하는 대로 설계된
기능(클래스)를 상속받아 응용프로그램을 구현함
- 소스코드를 수정하여 재사용하는 것이 아닌 상속/오버라이딩을 통한 재사용이 객체지향의 장점
5. WPF 특징
- 풍부한 그래픽 표현
- 기존 Winform(Windows Forms)보다 풍부한 기능을 제공
- UI 중요성이 높으며, 미디어 리소스를 많이 쓰는 경우 Winform에 비해 유리
- XML 처리, 웹 서비스 활용에 유리
- 코드와 UI의 분리
- 화면에 보여지는 요소와 알고리즘을 분리하여 효율성 높임
- 디자이너 + 프로그래머의 협업
- XAML(UI) + C#으로 구현된 로직/모델
- 다양한 디스플레이에서 안정적인 GUI 제공
'Language > C# WPF Programming' 카테고리의 다른 글
[C# WPF 프로그래밍] 네이버 단축 URL API 사용 방법 및 코드 (1) | 2019.05.05 |
---|---|
C# WPF 프로그래밍 상속 및 접근자 (0) | 2019.04.27 |
C# WPF 프로그래밍 2개의 배열의 곱 구하기 (0) | 2019.04.26 |
C# 기초 프로그래밍 Main 함수와 Console 코드 (0) | 2019.04.25 |
C# WPF 프로그래밍 유저 컨트롤(User Control) 구현하기 (0) | 2019.04.23 |
C# WPF 프로그래밍 툴바(Tool Bar)구현 (0) | 2019.04.22 |
C# WPF 프로그래밍 SubWindow 생성 구현하기 (0) | 2019.04.21 |
C# WPF 프로그래밍 콤보박스(Combo Box) 구현 (0) | 2019.04.20 |
최근댓글