반응형

안녕하세요, 츄르 사려고 코딩하는 집사! 코집사입니다.

이번 글은 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 제공

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기