서브메뉴

본문

Visual C++ 2015 MFC Programming (Visual Studio , 단계별로 쉽게 배우는)
Visual C++ 2015 MFC Programming (Visual Studio , 단계별로 쉽게 배우는)
저자 : 정일홍
출판사 : 생능출판사
출판년 : 2017
ISBN : 9788970509075

책소개

입문자를 위한 단계별로 따라하며 배우는 MFC 프로그래밍『Visual C++ 2015 MFC Programming』. 이 책은 처음으로 Visual C++을 접하는 대학 초년생 및 초보자를 위한 책이다. 실습을 중심으로 단계별로 따라하며 자연스럽게 MFC를 익힐 수 있도록 구성했다. 이 책은 기본적인 C 또는 C++의 문법적 내용은 수록하지 않았다. 대신 Visual C++ 2015를 사용하여 윈도우 프로그래밍을 하는 방법을 알기 쉽게 수록하고 있다. 따라서 이 책을 보기 위해서는 C/C++의 기본적인 지식이 필요하다. 또한 컴퓨터의 조작 시 표시되는 실제 화면을 그대로 수록하고 장문의 설명을 탈피하여 아주 일반적인 컴퓨터 조작 능력만 있으면 실습 예제의 단계를 따라가면서 다양한 실습을 직접 해보고 그 결과를 완전히 자기 것으로 만든 후에 다음 단계로 진행되도록 구성했다.
[교보문고에서 제공한 정보입니다.]

출판사 서평

입문자를 위한 단계별로 따라하며 배우는 MFC 프로그래밍

이 책은 처음으로 Visual C++을 접하는 대학 초년생, 몇 번 Visual C++ 책과 씨름하였으나 아직 윈도우 프로그램을 작성하는데 문제가 있는 학생들을 위한 책이다. 실습을 중심으로 단계별로 따라하며 자연스럽게 MFC를 배울 수 있는 가장 쉬운 Visual C++ 2015 입문서이다.

기존의 Visual C++ 입문서와 다음과 같은 차별화 된 특징이 있다.

첫째, 이 책은 기본적인 C 또는 C++의 문법적 내용은 수록하지 않았다. 대신 Visual C++ 2015를 사용하여 윈도우 프로그래밍을 하는 방법을 알기 쉽게 수록하고 있다. 따라서 이 책을 보기 위해서는 C/C++의 기본적인 지식이 필요하다.

둘째, 컴퓨터의 조작 시 표시되는 실제 화면을 그대로 수록하고 장문의 설명을 탈피하여 아주 일반적인 컴퓨터 조작 능력만 있으면 실습 예제의 단계를 따라가면서 다양한 실습을 직접 해보고 그 결과를 완전히 자기 것으로 만든 후에 다음 단계로 진행되도록 구성되어 있다.

셋째, Visual C++ 2015를 사용하여 프로젝트를 작성하는데 장문의 설명 중심의 나열식이 아닌 문제 해결 중심의 실습 위주로 다양하고 필요한 내용만을 선택하여 쉽게 구성하였다. 이러한 간단한 설명과 실습 방법이 독특하고 실용적이기에 C 또는 C++ 언어를 배우고 처음으로 Visual C++ 2015를 이용하여 윈도우 애플리케이션을 만드는 방법을 익히기 위한 학생들에게는 최고의 입문서가 될 것이다.

넷째, 대학에서 이 책을 교재로 하여 한 학기 강의를 할 경우 중간고사와 기말고사를 제외한 14주에 한 단원씩 완성할 수 있도록 구성되어 있으며 각 단원 마지막 부분에는 연습 문제를 두어 본인 스스로 실습과제를 통해 배운 내용을 다시 한 번 확인할 수 있는 기회를 제공하였다.

이 책의 구성

이 책을 교재로 하여 한 학기 강의를 할 경우 중간고사와 기말고사를 제외한 14주에 한 단원씩 완성할 수 있도록 구성되어 있다.

1장에서는 윈도우 프로그래밍의 기본 개념과 Win32 SDK를 이용하여 윈도우 프로그램을 작성하는 방법에 대해 설명한다. 그리고 윈도우 프로그램의 기본 형식에 대해 자세히 알아본다.

2장에서는 MFC의 기본적인 개요와 MFC의 아키텍처에 대해 상세히 설명한다. 또한 MFC 응용 프로그램 마법사 사용법에 대해 설명하고 MFC 응용 프로그램 마법사를 사용하여 MFC 프로젝트를 만드는 방법에 대해서 알아본다.

3장에서는 윈도우 프로그래밍에서 가장 중요한 개념 중의 하나인 메시지 처리에 대해 설명한다. MFC가 메시지를 처리하는 방법에 대해 설명하고, 클래스 마법사를 사용하여 메시지에 대응하는 메시지 핸들러 함수와 맵핑시키는 방법에 대해 자세히 살펴본다. 많은 종류의 메시지가 있지만 특히 이 장에서는 윈도우 메시지, 마우스 메시지, 그리고 키보드 메시지에 대해 살펴본다.

4장에서는 MFC에서 제공하는 공용 대화상자와 사용자가 직접 대화상자 기반의 프로그램을 구현함으로서, 윈도우 프로그래밍 방식에서 대화상자가 동작하는 원리와 대화상자에서 사용되는 기본적인 표준 컨트롤의 사용법에 대해 알아본다.

5장에서는 사용자 인터페이스인 메뉴, 툴바, 상태 표시줄, 도킹 팬 윈도우에 대해 설명하고 이것들을 만드는 방법에 대해서 자세히 살펴본다.

6장에서는 그래픽 출력에 대한 개념과 그래픽을 출력하는 방법에 대해 상세히 기술한다. GDI와 DC의 개념, GDI 객체에 대해 설명하고 GDI 객체를 사용하여 그래픽을 출력하는 방법과 GDI+ 객체를 사용하여 그래픽을 출력하는 방법에 대해서 자세히 살펴본다.

7장에서는 List Control과 Tree Control에 대해 배운다. List Control과 Tree Control은 프로그램 내의 정보를 특정 기준에 따라 분류할 수 있게 해 주며, List Control과 Tree Control은 우리가 윈도우 탐색기에서 많이 경험해 보았을 것이다.

8장에는 7장에서 배운 컨트롤 이외에 자주 사용되고 윈도우에서 흔히 볼 수 있는 여러 가지 컨트롤들에 대해 배운다. 정보를 분류하고자 할 때 사용되는 Tab Control, 마우스를 통해 일정범위 안의 값을 입력하는 Slider Control, 간단한 동영상 재생에 사용되는 Animation Control, 세밀한 제어라든지 일정 값을 입력하는 Spin Control, 어떤 작업의 진행 상황을 시각적으로 표현하는 Progress Bar Control, 사용자로부터 인터넷 프로토콜(IP) 형식의 숫자 주소를 입력할 수 있는 IP Address Control, 특정날짜를 입력하거나 선택하도록 하는 Date Time Picker Control에 대해 간단히 살펴보고 실습을 통해 익혀본다.

9장에서는 Visual C++ 2008 Feature Pack 버전부터 새롭게 추가된 고급 MFC
Feature 컨트롤(“MFC” 접두어가 붙은 컨트롤)과 리본(Ribbon) 메뉴에 대해 배울 것이다. 대표적인 MFC Feature 컨트롤들에 대해 간단히 설명하고, 실습을 통하여 대표적인 CMFCColorButton, CMFCFontComboBox, CVSListBox, MFC PropertyGrid 컨트롤에 대한 사용법을 배우게 될 것이다. 그리고 리본 디자이너(Ribbon Designer)를 이용한 리본 메뉴의 편집과 각 요소들에 대한 이벤트 처리에 대해서 실습을 통하여 배우게 될 것이다.

10장에서는 여러 종류의 뷰 클래스에 대해서 알아보고 분할 윈도우, 다중 뷰에 대해서 알아본다. 또한 도큐먼트 클래스의 Serialize() 함수를 이용하여 파일의 입·출력에 대해 알아볼 것이다.

11장에서는 동적 연결 라이브러리 DLL을 만드는 방법에 대하여 설명한다. DLL의 링크 방법과 종류에 대해 살펴보고 실습을 통해 사용 방법을 익혀본다.

12장에서는 OLE DB를 이용한 데이터베이스 프로그램을 작성해 본다. 데이터베이스 프로그램은 기본적으로 데이터의 입·출력과 데이터 추가, 수정, 삭제 그리고 검색기능을 갖는 것이 일반적인데 데이터베이스 프로그래밍을 하기 전에 반드시 알고 있어야 하는 사항은 데이터베이스에 접근하는 방식이다. Visual C++에서 데이터베이스에 접근하는 세 가지 방식인 ODBC를 이용하는 방법, DAO를 이용하는 방법, 그리고 OLE DB를 이용하는 방법에 대해 배운다.

13장에서는 모든 그래픽 도구에서 곡선을 그리는데 사용되고 있는 베지어 곡선을 구현하는 프로그램을 작성해 볼 것이다. 베지어 곡선 알고리즘은 곡선을 생성하는데 있어 대표적이며 기본이 되는 알고리즘이다. 물론 MFC에서 PolyBezier() 함수가 제공되는데 이 함수는 cubic 베지어 곡선을 그리는데 한정되어 있다. 이번 장에서는 베지어 곡선상의 좌표를 계산하는 알고리즘을 배우고 그 알고리즘에 입각하여 베지어 곡선을 구현해 볼 것이다.

14장에서는 네트워크 프로그래밍 중에 채팅 프로그램을 작성해 본다. 채팅 프로그램을 구현함으로써, 윈도우 프로그램 방식에서 채팅 프로그램이 동작하는 원리와 방법에 대해 공부한다.
[교보문고에서 제공한 정보입니다.]

목차정보

CHAPTER 01 윈도우 프로그래밍의 이해
1.1 윈도우 프로그래밍의 개념
1.2 Win32 SDK 윈도우 프로그램의 기본 구조
실습 1-1 간단한 Win32 SDK 윈도우 프로그램 만들기
1.3 간단한 윈도우 애플리케이션의 분석
1.4 윈도우 프로그램의 기본 형식
연습문제

CHAPTER 02 MFC 개요 및 아키텍처
2.1 MFC의 개요
2.2 MFC 프로그램의 구조
2.3 Visual C++의 시작
실습 2-1 MFC 응용 프로그램 마법사 익히기
2.4 SDI 템플릿
2.5 MDI 템플릿
2.6 MFC 애플리케이션 아키텍처
실습 2-2 간단한 MFC 프로젝트 만들기
연습문제

CHAPTER 03 메시지 처리
3.1 메시지 처리의 기본개념
3.2 메시지 박스(Message Box)
실습 3-1 메시지 박스 생성하기
3.3 마우스 메시지(Mouse Message)
실습 3-2 디지털시계 만들기
3.4 키보드 메시지(Keyboard Message)
실습 3-3 문자를 입력하고 이동시키기
연습문제

CHAPTER 04 대화상자
4.1 CDialogEx 클래스
4.2 대화상자 기반의 프로그램
4.3 MFC 기본 컨트롤
실습 4-1 MFC의 기본 컨트롤(Control) 사용법 익히기
4.4 모달(Modal) 대화상자와 모덜리스(Modeless) 대화상자
4.5 공용 대화상자
실습 4-2 대화상자 기반 디지털시계 만들기
연습문제

CHAPTER 05 사용자 인터페이스
5.1 메뉴(Menu)
실습 5-1 간단한 메뉴와 단축키 만들기
5.2 툴바(Toolbar)
실습 5-2 간단한 툴바 만들기
5.3 상태 표시줄(Status Bar)
실습 5-3 상태 표시줄에 팬을 만들고 문자열을 출력하기
5.4 도킹 팬(Docking Pane) 윈도우
실습 5-4 문자열 출력 도킹 팬 만들기
연습문제

CHAPTER 06 그래픽 객체의 사용
6.1 GDI와 DC의 개념
6.2 GDI 객체
실습 6-1 직선, 도형 그리기
6.3 GDI+의 개념
실습 6-2 그림판 만들기
연습문제

CHAPTER 07 컨트롤 및 리소스 Ⅰ
7.1 리스트 컨트롤(List Control)
실습 7-2 대화상자에 List Control 사용하기
7.2 트리 컨트롤(Tree Control)
실습 7-2 대화상자에서 Tree Control 사용하기
연습문제

CHAPTER 08 컨트롤 및 리소스 Ⅱ
8.1 탭 컨트롤(Tab Control)
8.2 슬라이더 컨트롤(Slider Control)
8.3 스핀 컨트롤(Spin Control)
실습 8-1 도형의 종류와 색상을 대화상자에 출력하기
8.4 프로그레스 바 컨트롤(Progress Bar Control)
8.5 IP 주소 컨트롤(IP Address Control)
8.6 네트워크 주소 컨트롤(Network Address Control)
8.7 날짜/시간 선택 컨트롤(Date Time Picker)
8.8 애니메이션 컨트롤(Animation Control)
실습 8-2 각종 컨트롤을 이용한 데이터 전송 Simulator 작성하기
연습문제

CHAPTER 09 고급 컨트롤 및 리본
9.1 MFC Feature 컨트롤(MFC Feature Controls)
실습 9-1 간단한 명함제작 프로그램 만들기
9.2 리본(Ribbon)
실습 9-2 리본 메뉴 및 각종 리본 컨트롤 사용하기
연습문제

CHAPTER 10 도큐먼트 파일 입출력 및 다양한 뷰 클래스
10.1 도큐먼트
10.2 파일 입출력
10.3 다양한 뷰 클래스
실습 10-1 FormView를 이용하여 문자 출력 및 파일 입출력하기
10.4 분할 윈도우
실습 10-2 정적 분할 윈도우를 이용한 학생 정보 출력 프로그램 만들기
10.5 다중 뷰
실습 10-3 다중 뷰 만들기
연습문제

CHAPTER 11 동적 연결 라이브러리 DLL
11.1 DLL의 링크
11.2 DLL의 종류
실습 11-1 Implicit 링킹을 통한 정규 DLL 달력 만들기
실습 11-2 Explicit 링킹을 통한 정규 DLL 달력 만들기
실습 11-3 확장 DLL을 통한 2차 방정식 근을 구하는 프로그램 만들기
연습문제

CHAPTER 12 데이터베이스 프로그래밍
12.1 데이터베이스 프로그램의 개요
실습 12-1 OLE DB를 이용한 학생 도서관리 프로그램 만들기
연습문제

CHAPTER 13 그래픽 프로그래밍
13.1 베지어 곡선(Bezier Curve)
실습 13-1 5 알고리즘을 통한 베지어(Bezier) 곡선 그리기
실습 13-2 컨트롤 포인트의 이동 및 베지어 곡선의 해상도 설정하기
연습문제

CHAPTER 14 네트워크 프로그래밍
14.1 네트워크 프로그램의 개요
실습 14-1 채팅 프로그램 제작하기
연습문제
[교보문고에서 제공한 정보입니다.]