책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > C++
· ISBN : 9788980545070
· 쪽수 : 361쪽
· 출판일 : 2003-03-24
책 소개
목차
용어 대역표
머리글
이 책에 대하여
0 디자인 시도와 미들웨어 해결방안, 그리고 ACE
0.1 네트워크 어플리케이션에 대한 시도
0.2 네트워크 어플리케이션 디자인 관점
0.3 객체지향적 미들웨어 솔루션
0.3.1 객체지향적 미들웨어 계층
0.3.2 호스트 기반 미들웨어의 이점
0.4 ACE 툴킷에 대한 개요
0.4.1 ACE OS 적응(adaptation) 계층
0.4.2 ACE C++ Wrapper Facade 계층
0.4.3 ACE 프레임워크 계층
0.4.4 ACE 네트워크 서비스 컴포넌트 계층
0.5 예제 : 네트워크 로깅 서비스
0.6 요약
1 통신 디자인 관점
1.1 비접속 기반 프로토콜과 접속 기반 프로토콜
1.2 동기적 메시지 교환과 비동기적 메시지 교환
1.3 메시지 전달 방식과 공유 메모리 방식
1.4 요약
2 소켓 API의 개요
2.1 운영체제 IPC 장치에 대한 개요
2.2 소켓 API
2.3 소켓 API의 한계점들
2.3.1 오류가 발생하기 쉬운 API
2.3.2 지나치게 복잡한 API
2.3.3 이식성과 일관성이 결여된 API
2.4 요약
3 ACE 소켓 Wrapper Facade 클래스
3.1 개요
3.2 ACE_Addr과 ACE_INET_Addr 클래스
3.3 ACE_IPC_SAP 클래스
3.4 ACE_SOCK 클래스
3.5 ACE_SOCK_Connector 클래스
3.6 ACE_SOCK_IO와 ACE_SOCK_Stream 클래스
3.7 ACE_SOCK_Acceptor 클래스
3.8 요약
4 네트워크 로깅 서비스의 구현
4.1 개요
4.2 ACE_Message_Block 클래스
4.3 ACE_InputCDR과 ACE_OutputCDR 클래스
4.4 초기 상태의 로깅 서버
4.4.1 Logging_Server 기초 클래스
4.4.2 Logging_Handler 클래스
4.4.3 Iterative_Logging_Server 클래스
4.5 클라이언트 어플리케이션
4.6 요약
5 동시 처리 디자인 관점
5.1 반복적 방식, 동시 처리 방식, 그리고 reactor 방식의 서버
5.2 프로세스와 쓰레드
5.3 프로세스 및 쓰레드 생성 전략들
5.4 사용자 쓰레드 모델 및 커널(kernel) 쓰레드 모델, 혼합 쓰레드 모델
5.5 시분할(Time-shared) 스케줄링 방식과 실시간 스케줄링 방식
5.6 작업(Task) 기반 구조와 메시지 기반 구조
5.7 요약
6 운영체제의 동시 처리 장치들에 대한 개요
6.1 동기적 이벤트 다중 수신(Demultiplexing)
6.2 멀티프로세싱 장치
6.3 멀티쓰레딩 장치
6.4 동기화 장치
6.4.1 상호 배제(Mutual Exclusion : Mutex) 잠금
6.4.2 독자/기록자(Readers/Writer) 잠금
6.4.3 세마포어(Semaphore) 잠금
6.4.4 상태 변수(Condition Variable)
6.5 운영체제 동시 처리 장치들의 한계점
6.6 요약
7 ACE 동기적 이벤트 다중 수신 Wrapper Facade 클래스
7.1 개요
7.2 ACE_Handle_Set 클래스
7.3 ACE_Handle_Set_Iterator 클래스
7.4 ACE::select( ) 메소드
7.5 요약
8 ACE 프로세스 Wrapper Facade 클래스
8.1 개요
8.2 ACE_Process 클래스
8.3 ACE_Process_Options 클래스
8.4 ACE_Process_Manager 클래스
8.5 요약
9 ACE 쓰레드 Wrapper Facade 클래스
9.1 개요
9.2 ACE_Thread_Manager 클래스
9.3 ACE_Sched_Params 클래스
9.4 ACE_TSS 클래스
9.5 요약
10 ACE 동기화 Wrapper Facade 클래스
10.1 개요
10.2 ACE_Guard 클래스
10.3 ACE Mutex 클래스
10.4 ACE 독자/기록자(Readers/Writer) 잠금 클래스
10.5 ACE 세마포어(Semaphore) 클래스
10.6 ACE 상태 변수 클래스
10.7 요약
부록 A ACE C++ Wrapper Facade 클래스의 디자인 원칙들
A.1 개요
A.2 데이터 타입 안정성을 향상시키기 위해 wrapper facade 패턴을 사용할 것
A.2.1 정확한 용도로 사용하도록 C++ 클래스들을 디자인할 것
A.2.2 데이터 타입 안정성에 대한 제어된 위반은 허가할 것
A.3 일반적인 용도를 위해 단순화시킬 것
A.3.1 다수의 메소드를 단일 메소드로 결합할 것
A.3.2 단일화된 Wrapper Facade 하에서 함수들을 결합할 것
A.3.3 매개변수 순서를 재지정하고 기본값을 제공할 것
A.3.4 명시적으로 응집적인 객체들을 연합시킬 것
A.4 디자인 상의 명확성과 확장성을 향상시키기 위해 계층구조를 사용할 것
A.4.1 1차원적 API들을 계층구조로 대체할 것
A.4.2 가짜 상속을 C++ 상속으로 대체할 것
A.5 가능한 한 플랫폼간의 차이를 숨길 것
A.5.1 유익하다고 생각될 때는 언제나 빌드하기 위한 소스 코드를 제공할 것
A.5.2 빠진 기능들을 가상으로 구현할 것
A.5.3 매개변수화된 타입을 통하여 가변성을 다룰 것
A.6 효율을 위해 가능한 한 최적화할 것
A.6.1 효율적으로 Wrapper Facade를 디자인할 것
A.6.2 성능 중점의 메소드는 인라인 메소드로 지정할 것
A.6.3 시스템 수준의 툴킷을 다룰 때 예외 처리를 피할 것
A.7 요약
부록 B ACE의 과거, 현재, 그리고 미래
B.1 ACE의 진화
B.1.1 "가려운 곳"으로부터의 시작
B.1.2 전환점
B.1.3 상업적 개발자와의 틈새를 없애다
B.1.4 미들웨어 표준들
B.1.5 오픈소스의 효과
B.2 앞으로의 나아갈 방향
B.3 결론
찾아보기