www.tipntec.com   IT기기, IT서적 직거래 컴뮤니티 팁엔테크
 1% 함께 나눔 클릭 !
로그인
[ ID/Pass찾기 ]
읽지않은 쪽지
(0)
일 반 판 매 분 류
 
ISBN 책 가격비교
ώ 예스24 ώ 교보문고
ώ 알라딘 ώ 인터파크
ώ 리브로 ώ 영풍문고
ώ 북미르 ώ 북스캔
ώ 11st ώ 반디앤...
ώ 지마켓 ώ 팁엔테크
[ 업무시간 ]
월~금 (토.일 휴무)
am: 10시 ~ pm: 7시
점심: 12시 ~ 1시
tipntec@gmail.com
Home >> 상세보기
이전
- 분류위치 >> 프로그래밍언어 >> C++ >>
제목 : CBD, Component Development with Visual C++ & ATL
새책정가 : 32,000원 판매가격 : 13,000원
ISBN : 9788996103813 출판일 : 2008/7/8
저 자 : 전병선 출판사 : 와우북스
책상태 : AAA급(새책)
판매가능권(질)수: 0 권(질)  
배송요금 : 0원 / 배송비 판매자부담(무료배송)
배송방법 : 택배배송
반품여부 : 반품불가  
판매가능지역 : 전국(제주,도서지역제외)
판매자정보(ID / 판매등급) : timesys[ ] / (평민)
사진1
(판매완료)
판매자 책상태 설명 :

구입은 20일 정도 되었구요~

따끈 따근한 새책 그대로입니다.

cbd방법론의로 개발접근 방식 책입니다.


☞  판매자와 가격 조정을 원하시면 쪽지 또는 댓글을 이용해 보세요.

☞  댓글쓰기(현재 0 / 500byte):
               댓글은 쪽지와 메일로도 판매자에게 자동발송 되어 편리 합니다.


내 용 :

이 책은 지난 4년간 베스트 셀러였으며, 한동안 절판 되었던 전병선 저 “Component Development with Visual C++ & ATL”의 재출간 도서이다.

지금 소프트웨어 개발에 있어서 키워드는 단연 CBD(Component_Based Development)이다. 한마디로 말하면 컴포넌트를 기반으로 소프트웨어 시스템을 개발하자는 것이다. 그리고 이것을 가능하게 하는 분산 객체 기술(distributed object technology)이 꽃을 피우고 있다. 마이크로소프트 진영의 COM/DCOM, 자바 진영의 RMI/EJB, OMG의 CORBA가 대표적인 기술이다. 특히 이 책의 주체인 COM과 DCOM은 닷넷(.NET)의 출현에도 불구하고 여전히 마이크로소프트 기술의 중심에 서있다. 닷넷을 공부해 본 사람이라면 COM 기술을 이해해야 닷넷을 활용할 수 있다는 것을 쉽게 깨닫게 된다.
이 책에는 COM 기술과 ATL 라이브러리의 변경 사항이 충실히 반영되어 있으며, 그 동안 실무 프로젝트를 수행하면서 얻었던 경험들이 녹아 스며들어 있다. 필자가 이책을 쓰면서 특별히 고려한 사항은 다음과 같다.

▪ COM 개념을 더욱 쉽게 설명한다
▪ ATL의 새로운 애트리뷰트 기반 프로그래밍 방식을 적용한다
▪ COM에 새롭게 추가된 기능을 설명한다
▪ 실무에서 사용 가능한 내용을 추가한다
▪ WTL(Windows Template Library)를 설명한다
▪ COM+와 CBD 개념을 심어준다

출판사 서평

다수의 IT 분야 베스트셀러 저자이자, CBD와 SOA 전문가로 인정 받고있는 전병선씨가 쓴 이책은 마이크로소프트의 모든 기술을 제대로 이해하고자 하는 사람들에게 아주 견고한 기반을 마련해 준다. 세상에 모습을 드러낸 지 이미 10년 이상이 흘렀건만 아직도 어렵다고 느껴지는 COM 기술을 이야기식으로 쉽게 이해할 수 있게 해준다. 이책에서는 COM의 새로운 기능과 ATL의 새로운 프로그래밍 방식인 애트리뷰트 기반 프로그래밍 (attribute_based programming), 그리고 지금까지 아무도 가르쳐주지 않았던 오픈 소스로 제공되는 WTL(Windows Template Library)에 대해서도 설명한다. WTL은 사양화 되고있는 MFC를 대체할 만한 클라이언트 위도우 애플리케이션 개발 방법을 제공하지만 아직 이것을 설명한 책은 없다. 따라서 STL, ATL을 사용하는 개발자들에게 WTL은 아주 신선한 충격을 던져줄 것이다. 그리고 동적 컬렉션(dynamic collection)과 인터넷상에서 DCOM 사용 등 실무에서 직접 사용할 수 있는 실용적인 내용도 포함되었다.

목 차 :
1부 COM 이야기

1장 왜 COM인가?
1.1 COM의 등장
1.1.1 메인프레임 시대
1.1.2 크라이언트/서버 시대
1.1.3 3계층 클라이언트/서버 시대
1.1.4 컴포넌트 기반 분산 객체 기술의 등장
1.1.5 COM의 역사
1.2 COM 컴포넌트 인터페이스
1.2.1 인터페이스 정의
1.2.2 인터페이스 메모리 구조
1.2.3 인터페이스 상속과 구현 상속
1.3 COM 컴포넌트와 GUID
1.3.1 COM컴포넌트의 종류
1.3.2 GUID(Globally Unique Identifer)

2장 COM 컴포넌트 사용
2.1 COM 컴포넌트 등록
2.2 COM 클라이언트 애플리케이션 생성 과정
2.3 COM 라이브러리 초기화
2.3.1 CoInitialize/CoInitializeEx 함수
2.3.2 HRESULT
2.4 COM 객체의 CLSID 구하기
2.4.1 OLE/COM 개체 뷰어
2.4.2 프로그램 ID(ProgID)
2.4.3 CLSIDFromProgID 함수
2.5 COM에서의 문자열 사용
2.6 COM 객체 인스턴스 생성
2.6.1 CoCreateInstance 함수
2.6.2 COM 객체 인스턴스 생성 과정
2.7 IUnknown 인터페이스
2.7.1 IUnknown 인터페이스가 필요한 이유
2.7.2 QueryInterface 메서드
2.7.3 AddRef, Release 메서드
2.7.4 스마트 포인터 클래스
2.7.5 인터페이스 사용 시 유의 사항
2.8 COM 객체 서비스 사용
2.9 COM 라이브러리 초기화 해제

3장 COM 객체 구현
3.1 COM 인터페이스 정의
3.1.1 표준 인터페이스
3.1.2 커스텀 인터페이스 정의
3.1.3 MIDL 컴파일러
3.2 COM 객체 클래스 구현
3.2.1 인터페이스 포함 방법
3.2.2 인터페이스 상속 방법
3.2.3 다중 인터페이스 구현 _ 인터페이스 포함 방법
3.2.4 다중 인터페이스 구현 _ 인터페이스 상속 방법
3.2.5 CLSID 정의
3.3 클래스 팩토리 클래스 구현
3.3.1 왜 클래스 팩토리를 구현해야 하는가?
3.3.2 클래스 팩토리 COM 객체 구현

4장 인_프로세스 서버 COM 컴포넌트
4.1 Win32 DLL의 이해
4.1.1 프로세스와 DLL
4.1.2 DLLMain 함수
4.1.3 DLL 익스포트 함수
4.2 인_프로세스 서버 COM 컴포넌트 익스포트 함수
4.2.1 DllGetClassObject 함수
4.2.2 DllCanUnloadNow 함수
4.2.3 DllRegisterServer 함수
4,2,4 DllUnregisterServer 함수
4.3 인_프로세스 서버 COM 컴포넌트 구현 마무리 작업
4.3.1 objbase.h 헤더 파일
4.3.2 미리 컴파일된 헤더 파일 사용 해제

5장 아웃_오브_프로세스 서버 COM 컴포넌트
5.1 마샬링(marshaling)의 이해
5.1.1 아웃_오브_프로세스 서버 COM 컴포넌트 구현 시 고려 사항
5.1.2 표준 마샬링 과정
5.1.3 커스텀 인터페이스의 프록시/스텁 생성
5.1.4효율적인 마샬링을 위한 IDL 애트리뷰트
5.2 아웃_오브_프로세스 서버 COM 컴포넌트 구현
5.2.1 WinMain 함수
5.2.2 CoRegisterClassObject 와 CoRevokeClassObject 함수
5.2.3 프로세스 종료
5.2.4 레지스트리 등록 및 해제

2부 Visul C++ COM 지원 가능

6장 Visual C++ COM 컴파일러
6.1 COM 지원 C++ 컴파일러 개요
6.2 형식 라이브러리(type library)
6.3 #import 선행 처리기 지시어
6.4 C++ 언어 확장
6.4.1 __declspec(uuid())와 __uuidof()
6.4.2 __declspec(property)
6.5 COM 지원 클래스
6.5.1 _com_ptr_t 스마트 포인터 클래스
6.5.2 _com_error 클래스와 HRESULT 에러 처리
6.5.3 COM 데이터형 클래스 : _bstr_t와 _variant_t
6.6 COM 지원 전역 함수

7장 Active Template Library 개요
7.1 ATL의 특징
7.1.1 ATL의 장점
7.1.2 ATL 프로젝트 생성
7.1.3 ATL COM 객체 생성
7.1.4 ATL COM 객체 구현
7.2 ATL 기반 클래스
7.2.1 ATL 모듈 클래스
7.2.2 ATL COM 객체 기초 클래스
7.3 스마트 포인터 클래스와 데이터 타입 클래스
7.3.1 ATL 스마트 포인터 클래스
7.3.2 ATL 데이터 타입 클래스
7.4 애트리뷰트 기반 프로그래밍
7.4.1 애트리뷰트의 목적
7.4.2 애트리뷰트 기본 메커니즘
7.4.3 COM 관련 애트리뷰트
7.4.4 ATL 마법사에서의 애트리뷰트 사용

8장 ATL 윈도우 클래스와 WTL
8.1 ATL 윈도우 클래스
8.1.1 ATL 윈도우 클래스 개요
8.1.2 윈도우 애플리케이션
8.1.3 CWindowImpl 클래스
8.1.4 윈도우 프로시저와 메시지 맵
8.1.5 CDialogImpl 클래스
8.2 Windows Template Library
8.2.1 WTL 소개
8.2.2 ATL/WTL 응용 프로그램 마법사
8.2.3 프레임 윈도우 클래스
8.2.4 다중 SDI 애플리케이션
8.2.5 뷰(view)
8.2.6 GDI 래퍼 클래스
8.2.7 컨트롤 클래스와 DDX(Dynamic Data Exchange)

3부 Com 컴포넌트 구현

9장 자동화와 이중 인터페이스
9.1 자동화 개요
9.1.1 자동화란 무엇인가
9.1.2 자동화의 이점과 단점
9.2 IDispatch 인터페이스
9.2.1 IDispatch 인터페이스 개요
9.2.2 디스패치 인터페이스(dispatch interface, dispinteface)
9.2.3 IDispatch::GetIDsOfNames 메서드
9.2.4 IDispatch::Invoke 메서드
9.3 IDispatch 인터페이스 사용
9.3.1 GetIDsOfNames 및 Invoke 메서드 호출
9.3.2 에러 정보 구하기
9.4 이중 인터페이스
9.4.1 이중 인터페이스란?
9.4.2 후기 바인딩과 초기 바인딩
9.5 자동화와 형식 라이브러리
9.6 자동화 데이터 타입
9.6.1 VARIANT 데이터형
9.6.2 BSTR 데이터형
9.6.3 SAFEARRAY 데이터형
9.7 IDispatchEx 인터페이스
9.8 ATL 자동화 컴포넌트 구현
9.8.1 ATL 자동화 객체 생성
9.8.2 IDispachImpl 클래스
9.8.3 속성 및 메서드 정의
9.8.4 에러 정보 제공
9.8.5 자동화 컨트롤러 구현

10장 커넥션 포인트와 이벤트
10.1 커넥션 포인트 메커니즘
10.2 ATL 자동화 객체의 이벤트 구현
10.2.1 이벤트 소스 인터페이스 정의
10.2.2 IConnectionPointContainer 인터페이스 구현
10.2.3 커넥션 포인트 추가
10.2.4 이벤트 발생
10.2.5 연결 지점 구현 마법사
10.2.6 이벤트 발생 헬퍼 함수 호출
10.2.7 IProvideClassInfo2 인터페이스 구현
10.3 ATL 이벤트 싱크 구현
10.3.1 이중 인터페이스로 정의된 소스 인터페이스의 이벤트 싱크 구현
10.3.2 디스패치 인터페이스로 정의된 소스 인터페이스의 이벤트 싱크 구현
10.4 Visual C++ COM 이벤트 처리
10.4.1 COM에서의 이벤트 소스 구현
10.4.2 COM에서의 이벤트 싱크 구현

11장 COM 컴포넌트 재사용
11.1 포함과 통합
11.1.1 COM에서의 재사용성
11.1.2 포함
11.1.3 통합
11.2 ATL에서의 포함 구현
11.2.1 내부 COM 객체 인터페이스 추가
11.2.2 내부 COM 객체의 포함 재사용
11.3 ATL에서의 통합 구현
11.3.1 내부 COM 객체의 통합 재사용
11.3.2외부 Unknown 구하기
11.3.3 CComObjectRootEx::FinalConstruct 멤버 함수 재정의

12장 컬렉션 구현
12.1 컬렉션 개요
12.2 정적 컬렉션
12.2.1 생성할 수 없는 COM 객체 정의
12.2.2 ATL 루트 객체 클래스 구현
12.2.3 ATL 컬렉션 객체 클래스 구현
12.2.4 열거자와 복제자
12.2.5 ATL 멤버 항목 객체 클래스 구현
12.2.6 정적 컬렉션 사용
12.3 동적 컬렉션
12.3.1 CAdapt 클래스
12.3.2 CComEnumOnSTL 클래스
12.3.3 ICollectionOnSTLImpl 클래스
12.3.4 동적 컬렉션 구현
12.3.5 동적 컬렉션 사용
12.3.6 동적 컬렉션 멤버 접근

4부 ActiveX 컨트롤 구현

13장 표준 컨트롤 구현
13.1 ActiveX 컨트롤이란?
13.1.1 커스텀 컨트롤
13.1.2 ActiveX 컨트롤의 특징
13.1.3 환경 속성과 확장 속성
13.2 ActiveX 컨트롤 표준 인터페이스
13.2.1 포함 객체로서의 ActiveX 컨트롤 인터페이스
13.2.2 자동화 객체로서의 ActiveX 컨트롤 인터페이스
13.2.3 ActiveX 컨트롤 고유의 인터페이스
13.2.4 OLE 컨트롤 96 사양
13.2.5 세부 상태 비트
13.3 ATL 컨트롤 클래스
13.3.1 ATL ActiveX 컨트롤 기초 클래스
13.3.2 ATL 컨트롤 인터페이스 구현 클래스
13.4 ATL 표준 컨트롤 구현
13.4.1 ATL 표준 컨트롤 생성
13.4.2 속성 맵
13.4.3 OnDraw 코드 구현
13.4.4 이벤트, 속성, 메서드 구현
13.5 인터넷을 위한 ActiveX 컨트롤 구현 고려 사항
13.5.1 컴포넌트 다운로드와 디지털 서명
13.5.2 컴포넌트의 안전성 보장

14장 속성 페이지와 열거형 속성
14.1 속성 페이지
14.1.1 속성 페이지란?
14.1.2 속성 페이지 관련 인터페이스
14.1.3 ATL 속성 페이지 관련 클래스
14.2 ATL 속성 페이지 구현
14.2.1 속성 페이지 클래스 생성
14.2.2 속성 페이지 대화상자 리소스 구현
14.2.3 속성 페이지 클래스 구현
14.2.4 컨트롤 클래스의 속성 맵에 속성 페이지 추가
14.3 열거형 속성
14.3.1 열거형 속성이란?
14.3.2 열거형 속성 인터페이스
14.3.3 ATL 열거형 속성 구현

15장 합성 컨트롤과 DHTML 컨트롤
15.1 합성 컨트롤 구현
15.1.1 합성 컨트롤이란?
15.1.2 합성 컨트롤 클래스 생성
15.1.3 대화상자 사용자 인터페이스 및 코드 구현
15.1.4 속성, 메서드, 이벤트 구현
15.1.5 UpDown 합성 컨트롤 구현
15.2 DHTML 컨트롤 구현
15.2.1 DHTML 컨트롤이란?
15.2.2 DTHML 컨트롤 클래스 생성
15.2.3 DHTML 컨트롤 클래스 구현

5부 고급 COM의 이해

16장 COM 쓰레딩 모델
16.1 쓰레딩 모델이란?
16.1.1 아파트먼트란?
16.1.2 아파트먼트 생성
16.1.3 단일 쓰레드 아파트먼트
16.1.4 다중 쓰레드 아파트먼트
16.1.5 쓰레드 중립 아파트먼트
16.1.6아파트먼트 사이의 인터페이스 포인터 마샬링
16.2 인_프로세스 서버 컴포넌트 쓰레딩 모델
16.2.1 인_프로세스 서버 컴포넌트 COM 객체의 쓰레딩 모델 표시
16.2.2 프리 쓰레드 마샬러
16.2.3 전역 인터페이스 테이블
16.2.4 쓰레드 중립 아파트먼트의 도입
16.3 아파트먼트 사이의 상호작용
16.3.1 아웃_오브_프로세스 서버 COM 컴포넌트
16.3.2 인_프로세스 서버 COM 컴포넌트
16.3.3 COM 쓰레딩 모델 선택
16.4 ATL COM 객체의 쓰레딩 모델 지원
16.4.1 ATL 쓰레딩 모델 클래스
16.4.2 ATL 단순 개체 마법사에서의 쓰레딩 모델 지원
16.4.3 프리 쓰레드 마샬러 옵션

17장 분산 COM(DCOM)
17.1 DCOM과 분산 애플리케이션
17.2 리모트 COM 객체 생성
7.2.1 리모트 COM 객체를 위한 레지스트리 설정
17.2.2 CoCreateInstanceEx 함수
17.2.3 인_프로세스 리모트 서버 컴포넌트의 사용
17.3 분산 애플리케이션의 보안
17.3.1 시작 사용 권한
17.3.2 액세스 사용 권한
17.3.3 사용자 등록이 되지 않은 상태에서의 COM 객체 실행

18장 COM+ 이야기
18.1 COM+의 등장
18.1.1 COM+ 컴포넌트 트랜잭션 모니터
18.1.2 계좌 이체 예제 애플리케이션
18.1.3 COM+ 컴포넌트 등록
18.2 JIT 활성화
18.3 개체 풀링
18.4 트랜잭션
18.5 역할 기반의 보안
18.6 기타 COM+ 서비스

19장 CBD 이야기
19.1 왜 CBD 인가?
19.1.1 컴포넌트의 이점
19.1.2 느슨한 결합도(loosely_coupled)
19.1.3 입자성(granularity)
19.2 CBD 개발 방법
19.3 CBD 개발 방법론 개관
19.3.1 ooCBD 개발 방법론의 특징
19.3.2 ooCBD 개발 방법론의 철학적 기반
19.3.3 컴포넌트 기반 소프트웨어 시스템 구축 과정
19.3.4 ooCBD 개발 방법론 프로세스
19.4 소프트웨어 아키텍처
19.4.1 왜 아키텍처가 필요한가?
19.4.2 소프트웨어 아키텍처란?
19.4.3 ooCBD 개발 방법론에서의 소프트웨어 아키텍처
19.5 아키텍처 관련 개념들
19.5.1 아키텍처 스타일과 아키텍처 패턴
19.5.2 아키텍처 스타일과 레퍼런스 아키텍처
19.5.3 아키텍처 패턴과 디자인 패턴
19.5.4 프레임워크
19.5.5 아키텍처와 설계
기 타 :
회사명: 팁엔테크 | 정보책임자: 이미래 | 사업자등록번호: 108-17-55826 | 이메일주소 무단수집 거부
서울시 영등포구 신길동 198  DNB  201호 Contact tipntec@gmail.com more information.
Copyleftⓒ2008 TipnTec. All Rights Not Reserved.