티스토리 뷰
MFC 프로그래밍에 있어서 각 클래스의 상관관계는 굉장히 중요하다.
우선 클래스별로 어떤 역할을 하는지 부터 알고 넘어가자.
데이터의 처리를 관리하는 Document 클래스와 데이터의 입출력을 관리하는 View, MainFrame 클래스 크게 두가지로 구분할 수 있겠다.
기존 MVC 패턴에 대하여 이해하고 있다면 습득이 훨씬 빠를 수 도 있다.
(M에 해당하는 Model 은 MFC의 Document, V에 해당하는 View는 MFC의 View, MainFrame, C에 해당하는 Controller는 굳이 분류하자면 MFC의 MainFrame 클래스가 되겠다)
View, MainFrame 클래스에서는 데이터의 입 출력을 담당하고 있는데, 화면이나 사용자로부터 어떠한 값을 입력받으려면 해당 클래스를 반드시 거쳐가야 한다.
그리고 데이터의 처리를 관리하는 Document 클래스.
처리해야 하는 데이터는 모두 이 Document 클래스에 저장시키고, 처리해야한다.
이는 데이터를 외부에 노출시키지 않고 캡슐화 하여 보관한다는 C++의 데이터 하이딩기법과도 비슷하다.
View, MainFrame 클래스에서 입력받은 데이터를 Document 클래스로 보내주면 Document 클래스에서 해당 데이터를 처리하거나 저장하고 또 출력시에는 View, MainFrame 클래스가 Document 클래스에 접근하여 해당 데이터를 가져와서 출력할 수 있다.
정리.
데이터의 입,출력 : View, MainFrame
데이터의 처리 : Documnet
'C,C++' 카테고리의 다른 글
WinAPI/MFC : 핸들의 개념 CWnd와 HWND의 차이점. (1) | 2015.05.21 |
---|---|
클래스와 메세지 (0) | 2015.05.09 |
Invalidate, InvalidateRect, UpdateAllViews의 차이점과 사용방법 (0) | 2015.05.09 |
Device Context의 개념(GetDC / ReleaseDC) (0) | 2015.05.09 |
MFC 클래스간 참조 방법 (1) | 2015.05.09 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- MFC
- 클라이언트
- 파이썬
- 파일
- 터미널
- Sort
- 티그널
- 쓰레드
- 리눅스
- 라즈베리파이
- 정렬
- 액터
- socket
- 유즈케이스
- 프로세스
- 소켓 프로그래밍
- 자료구조
- UML
- 디렉터리
- C
- 클래스
- 악보
- 안드로이드
- 스레드
- C++
- C/C++
- 데이터베이스
- 티라노 시그널
- 소켓
- 파이썬예제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함