270 likes | 484 Views
2 장. 객체지향 프로그래밍 기법. 실객체를 표현한 소프트웨어 객체로 프로그램 구성 소프트웨어 객체들의 상호 동작으로 프로그램 수행. 실세계. 프로그램 세계. 메시지. 사건. 소프트웨어 객체. 소프트웨어 객체. 실객체. 실객체. 소프트웨어 객체. 실객체. 있는 그대로 표현. 2 장. 프로그램 구현 - 콘솔 프로그램 으로 작성. 작업절차. Win32 Console Application 선택. -. New. Projects 페이지. 나머지는 앞절과 동일. -.
E N D
2장 • 객체지향 프로그래밍 기법 • 실객체를 표현한 소프트웨어 객체로 프로그램 구성 • 소프트웨어 객체들의 상호 동작으로 프로그램 수행 실세계 프로그램 세계 메시지 사건 소프트웨어 객체 소프트웨어 객체 실객체 실객체 소프트웨어 객체 실객체 있는 그대로 표현
2장 • 프로그램 구현 - 콘솔 프로그램으로 작성 작업절차 Win32 Console Application선택 - New Projects 페이지 나머지는 앞절과 동일 - Developer Studio 실행 < 프로젝트 선택 >
2장 < Exercise2 수행결과 >
MFC 란? • Microsoft Foundation Class (마이크로 소프트 사의 기반 클래스) • Visual C++ 과 함께 제공되는 내장 클래스(Library Class) • Visual C++ 를 사용해 윈도우 프로그램을 간단하게 개발할 수 있는 유용한 클래스 • 기본 Window 의 형태들은 새로 만들지 않고 MFC 를 상속받아 그냥 쓰면 된다. • 프로그래머의 작업시간을 단축시켜줌
2장 MFC(Microsoft Foundation Class) ……………………… ………………………………. ……………………………. ……………… 이미 정의된 클래스들 상속 AppWizard 기본 골격만 갖춘 창 CMainFrame class CMyView class CMyDoc class CMyApp clsss
CFrameWnd CDocument CView 데이터를 저장, 처리 (눈에는 안보임) 윈도우의 프레임(틀)을 관리 데이터를 보여주는 윈도우 CWinApp 위의 세 오브젝트를 묶어주고, 프로그램을 구동 시킴 (눈에는 안보임) Application Frameworks (AFX)
CObject CCmdTarget CWinApp CDocument CWnd CFrameWnd CView AFX 클래스의 계층 구조 거의 모든 MFC 클래스의 기반 클래스 커맨드 메세지를 받는 기능 프로그램을 구동시키는 기능 데이터를 저장하고 처리하는 기능 윈도우에 관련된 기능 (눈에 보이는 오브젝트) 프로그램 윈도우 프레임(외곽)을 관리하는 기능 데이터를 보여주는 윈도우 관리하는 기능
CFrameWnd protected/private 멤버 멤버 함수 멤버 변수 CWinApp CDocument CView CMyApp 클래스의 인스턴스 (전역 변수)
워크 스페이스 창 클래스 뷰 페이지 리소스 뷰 페이지 파일 뷰 페이지 논리적인 단위 요소들에 대한 목록들을 보여 준다. 프로젝트에서 정의되는 리소스 목록들을 보여 준다 프로젝트에 정의된 파일의 목록들을 보여 준다
메시지 큐 윈도우 오퍼레이팅 시스템 메시지 프로그램 메시지 큐 CWinApp::Run( ) { switch( ) case : } 메시지 핸들러 WM_ACTIVATE WM_CREATE OnCreate OnActivate OnMove WM_ACTIVATE WM_MOVE
2장 • Developer Studio 구동 File 메뉴 New항목
2장 • Step 1 : Application Program type Setting
2장 • Step 2 : Database Setting
2장 • Step 3 : OLE Setting
2장 • Step 4 : 화면 구성 Setting
2장 • Step 5 : 프로그램 소스 Setting
2장 • Step 6 : Class name & File Setting
2장 • 프로젝트에 대한 정보 및 설명
2장 • 응용 마법사가 만든 문서 편집기
2장 • 클래스마법사(ClassWizard)사용법 Project • 응용마법사를 사용하여 프로토타입을 생성 • 클래스마법사를 사용하여 마우스의 왼쪽 버턴을 클릭 • 했을 때, “ Hello! Event-Driven”문자열 출력
2장 • 클래스마법사(ClassWizard)
2장 • 클래스마법사(ClassWizard) 1 2 3
2장 • 클래스마법사(ClassWizard)
2장 • 클래스마법사(ClassWizard) 개별화 되는 작업 내용입력