MFC : 프로젝트 타입에 대하여

2026. 4. 21. 14:23·FRAMEWORK/MFC

주요구조(3가지)

더보기
  • 대화상자 기반(Dialog Based)
  • 단일 문서(SDI)
  • 다중 문서(MDI)

1. 대화상자 기반(Dialog Based)

1) 전체 구조

CWinApp
 └─ CDialogEx (메인 UI)

2) 특징

  • 가장 단순함
  • UI 중심(버튼, 입력창 등)
  • 이벤트 기반 처리

3) 코드 구조

class CMyDlg : public CDialogEx

4) 장점

  • 빠르고, 단순함

5) 단점

  • 확장성 낮음
  • 대규모 프로젝트에는 부적합함

2. 단일 문서(SDI, Single Document Interface)

1) 전체 구조

CWinApp
 └─ CFrameWnd (메인 창)
      └─ CView (화면)
           └─ CDocument (데이터)

> View / Document / Frame 으로 각 역할이 나눠져있는 것이 핵심

 

2) 특징

  • 한 개 문서만 처리
  • 그림판같은 구조

3) 장점

  • 구조 깔끔
  • 유지보수 좋음

4) 단점

  • 장비 UI로 쓰기에는 과함
  • 구조가 복잡함

3. 다중 문서(MDI, Multiple Document Interface)

1) 전체 구조

CWinApp
 └─ CMDIFrameWnd
      ├─ CMDIChildWnd
      │    └─ CView
      │         └─ CDocument

> 단일 문서와 다르게 메인 프레임(MainFrame) 기준으로 여러 프레임(ChildFrame)이 존재

2) 특징

  • 여러 창이 동시에 열리고, 동시에 사용 가능함
  • 각 프레임마다 Document가 있음

3) 장점

  • 확장성이 좋음
  • 대형 및 복잡한 프로그램에 적함

4) 단점

  • 구조가 매우 복잡함
  • 구현 난이도 매우 높음

4. 정리

구조 난이도 특징 사용처
Dialog ★ 단순 UI 장비, 툴
SDI ★ ★ ★ 문서 1개 간단 앱
MDI ★ ★ ★ ★ ★ 문서 여러개 대형 앱

'FRAMEWORK > MFC' 카테고리의 다른 글

MFC : 동작 구조에 대하여  (0) 2026.04.21
MFC : Dialog에 대하여  (0) 2026.04.21
'FRAMEWORK/MFC' 카테고리의 다른 글
  • MFC : 동작 구조에 대하여
  • MFC : Dialog에 대하여
m_Dev
m_Dev
  • m_Dev
    m_Dev
    m_Dev
  • 전체
    오늘
    어제
    • 분류 전체보기
      • MAIN STUDY
        • 정보보안
        • 빅데이터
        • 정보처리
        • 컴퓨터 구조
        • 기타
      • JOB
        • Study
        • Project
      • LMS 7
        • 개발일지
      • FRAMEWORK
        • Qt
        • MFC
        • Winform
        • WPF
        • MAUI
      • NETWORK
        • Study
        • Assignment
      • PYTHON
        • Set
        • Study
        • Assignment
        • Project
      • C
        • Set
        • Study
        • Assignment
        • Project
      • C++
        • Set
        • Study
        • Assignment
        • Project
      • C#
        • Set
        • Study
        • Assignment
        • Project
      • DATABASE
        • MySQL
        • SQLite
      • IDE
        • VisualStudioCode
        • VisualStudio
        • Pycharm
        • Colab
      • 기타
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
m_Dev
MFC : 프로젝트 타입에 대하여
상단으로

티스토리툴바