1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

Boost.Asio C++ 네트워크 프로그래밍 쿡북(ACORN+PACKT TECHNICAL BOOK)
저자 : 드미트로라드척 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 한정애

2017.03.30 ㅣ 328p ㅣ ISBN-13 : 9788960779921

정가30,000
판매가28,500(5% 할인)
적립금 1,200원 (4%)
배송일정 05월 02일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 인터넷 > 웹프로그래밍(웹디자...
C++ 11과 14의 세계가 펼쳐졌는데도 아직도 소켓 프로그래밍을 할 때는 C 스타일로 해야 한다는 게 답답하지 않나요? 데이터형도 제대로 갖춰져 있지 않아 찾아내기 어려운 버그들이 도사리고 있기도 하죠. 이런 생활이 지긋지긋하다면 이 책에서 소개하는 Boost.Asio 네트워크 라이브러리를 사용해보세요. 예전과 같은 정도의 효율성을 유지하면서도 관리하고 쉽고 이해하기 쉬운 네트워크 프로그램을 만들 수 있습니다. Boost.Asio를 이해하기 위한 간단한 예제에서부터 보안 네트워킹을 위한 SSL/TLS 적용 예제까지 두루 갖추고 있어 여러분이 오늘 해야 하는 일에 바로 적용할 수 있을 것입니다.
펼쳐보기

[목 차]

1장. 기초 지식
__소개
__종료점 만들기
__능동 소켓 만들기
__수동 소켓 만들기
__DNS 이름 해석하기
__종료점에 소켓 바인딩하기
__소켓 연결하기
__연결 받아들이기

2장. I/O 연산
__소개
__크기가 고정된 I/O 버퍼 사용하기
__확장 가능한 스트림 지향 I/O 버퍼 사용하기
__TCP 소켓에 동기적으로 쓰기
__TCP 소켓에서 동기적으로 읽기
__TCP 소켓에 비동기적으로 쓰기
__TCP 소켓에서 비동기적으로 읽기
__비동기 연산 취소하기
__소켓 종료하기와 닫기
__클라이언트 프로그램
__서버 프로그램
__소켓 닫기

3장. 클라이언트 응용 프로그램구현
__소개
__동기 TCP 클라이언트 구현하기
__SyncTCPClient 클래스
__동기 UDP 클라이언트 구현하기
__동기 TCP 클라이언트 구현하기
__요청 완료 - handler() 콜백 함수
__AsyncTCPClient 클래스 ? 초기화
__AsyncTCPClient 클래스 ? 요청 시작하기
__AsyncTCPClient 클래스 ? 요청 취소하기
__AsyncTCPClient 클래스 ? 클라이언트 닫기

4장. 서버 응용 프로그램 구현
__소개
__반복적 동기 TCP 서버 구현
__단점 없애기
__병렬 동기 TCP 서버
__비동기 TCP 서버 구현하기

5장. HTTP와 SSL/TLS
__소개
__HTTP 클라이언트 응용 프로그램 구현하기
__HTTP 서버 응용 프로그램 구현하기
__클라이언트 응용 프로그램에서 SSL/TLS 지원하기
__서버 응용 프로그램에서 SSL/TLS 지원하기

6장. 기타
__소개
__분산/수집 연산을 위해 결합 버퍼 사용하기
__타이머 사용하기
__소켓 연산 설정하기와 설정 알아보기
__스트림 기반 I/O 수행하기
__시간 제한 설정하기
펼쳐보기
이 책에서 다루는 내용

■ C++ 네트워크 라이브러리 Boost.Asio 소개
■ TCP와 UDP 프로토콜
■ 확장성 높고 매우 효율적인 클라이언트와 서버 프로그램 개발
■ 분산 응용 프로그램을 개발하는 데 필요한 배경 이론 학습
■ 분산 응용 프로그램에 대한 SSL/TLS 지원 추가와 보안 수준 향상
■ HTTP 클라이언트와 서버의 손쉬운 구현
■ iostream, 분산/수집 버퍼 및 타이머 사용

이 책의 대상 독자

이 책은 Boost.Asio 라이브러리를 사용해 C++ 네트워크 프로그래밍 기술을 향상시키거나 분산 응용 프로그램을 개발하기 위한 기반 이론을 이해하는 데 도움을 준다. 이 책에서는 여러분이 C++ 11에 대해 기본적인 지식을 갖추고 있다고 가정한다. 이 책에 수록된 내용을 제대로 습득하고, 고급 주제들을 이해하고 싶다면, 어느 정도 다중 스레드에 대한 경험이 있어야 한다

이 책의 구성

1장, *기초 지식*에서는 Boost.Asio 라이브러리에서 제공하는 기본 클래스에 대해 알아본다. 그리고 DNS 이름을 해석하고, 소프트웨어를 연결하며, 연결을 받아들이는 등과 같은 기본 연산을 실행하는 방법을 알아본다.
2장, *I/O 연산*에서는 개별적인 네트워크 I/O 연산을 동기적으로 또는 비동기적으로 실행하는 방법을 알아본다.
3장, *클라이언트 응용 프로그램 구현*에서는 여러 가지 방식의 클라이언트 응용 프로그램을 구현하는 방법을 알아본다.
4장, *서버 응용 프로그램 구현*에서는 여러 가지 방식의 서버 응용 프로그램을 구현하는 방법을 알아본다.
5장, *HTTP와 SSL/TLS*에서는 HTTP와 SSL/TLS 프로토콜 구현에 대한 고급 주제들을 살펴본다.
6장, *기타*에서는 그다지 유명하지는 않지만 매우 중요한 주제인 타이머, 소켓 설정, 결합 버퍼 등에 대해 알아본다.

지은이의 말

요즘은 정보가 중심이 되는 글로벌 시대이므로 우리의 삶에서 통신은 떼려야 뗄 수 없는 필수 요소다. 사적이든 공적이든 우리가 매일 행하는 일들의 거의 모든 영역에서 막대한 영향을 미치고 있다. 때로는 정보를 제때 올바르게 주고받지 못하는 것만으로도 재산을 잃거나 부상을 입기도 한다.
따라서 통신 소프트웨어를 개발할 때에는 신뢰도를 높이는 일이 가장 중요하다. 하지만 문제 자체도 복잡하고 운영체제에서 제공하는 저수준의 도구들도 복잡하기 때문에 통신의 신뢰성을 높이는 일은 결코 쉽지 않다.
Boost.Asio 라이브러리는 데이터형 체계를 갖추고, 객체지향 메서드를 활용하여 불필요한 복잡도를 제거하며, 재사용성을 높임으로써 개발 시간을 줄이는 것을 지향한다. 그뿐만 아니라 이 라이브러리는 어떤 플랫폼에서도 쓸 수 있기 때문에 프로그램을 한 번만 구현하면 다양한 플랫폼에 설치할 수 있다. 이로써 개발 비용을 낮추면서도 소프트웨어 품질을 더욱 높일 수 있다.
이 책에는 네트워크 프로그래밍을 하는 동안 자주 (그렇게 자주는 아니더라도) 벌어질 수 있는 다양한 상황에 대한 단계별 해결책을 30가지 이상의 예제를 들어 제시하고 있다. 모든 예제는 Boost.Asio 라이브러리에서 제공하는 기능을 활용한다. 일반적인 작업을 수행하고 다양한 문제를 해결할 때 이 라이브러리를 어떻게 활용하면 좋은지 확인해볼 수 있을 것이다.

옮긴이의 말

내가 다니던 회사는 개발자들로 가득한 곳으로 회식할 때도 프로그래밍 얘기를 할 때가 있습니다. 저의 퇴사 당시의 환송 회식 날에도 마찬가지였죠. 언제나처럼 C++11이라든지 람다라든지 인공지능을 데이터베이스에 접목시킨다든지 하는 얘기로 즐겁게 대화할 수도 있었을 겁니다. 그런데 이날은 어쩌다 보니 이 책을 번역하는 얘기가 나왔고 여러 개발자들이 번역할 때 제발 이런 짓만은 하지 말아 달라고 당부했습니다. 그러니까 평소에 영단어로 잘 쓰고 있는 걸 굳이 우리말로 번역하지 말라고요. virtual function을 가상 함수라고 한다든지 iterator를 반복자라고 부르는 걸 굉장히 싫어하면서 제발 명사는 그대로 두고 동사와 조사만 번역해달라고 여러 차례에 걸쳐서 당부했습니다. 독자 여러분들도 그렇게 느끼시는 편이신가요? 하지만 저는 가상 함수와 반복자로 번역했습니다. 대단히 이상하다고 생각하는 분들도 계시겠지만 public은 공개로, private은 전용이라고 표현했습니다. 제가 일상적으로 저렇게 말하느냐라고 하면 항상 그럴 리는 없죠. 대신 public이라고 말할까 공개라고 말할까 항상 고민합니다. 모든 영단어를 한자 기반 혹은 우리말 기반의 단어로 바꿀 수는 없습니다. 그래서 class는 클래스입니다. 어느 정도까지를 번역해야 하는가는 깔끔하게 해결하기 어려운 부분입니다. 매일매일의 고민과 당부와 질책들 속에서 번역할 단어들을 선정했습니다. 아마 그 어느 누구도 만족하지 못할 거라고 생각합니다. 그래도 이게 제가 할 수 있는 최선입니다.
그 외에도 오타나 오류나 오역들이 많이 있을 수 있습니다. 주의해서 번역하고, 거듭거듭 살펴보는데도 빠지는 부분들이 있고, 애초에 제가 잘못 알고 있거나 본문을 잘못 이해해서 틀린 부분도 있을 겁니다. 제 나름대로 전반적으로 이해하기 쉽도록 번역하다 보니 빠진 설명이 있을 수도 있습니다. 원서의 글 하나하나를 그대로 번역하기 보다는 독자가 읽기 편하게, 이해하기 쉽게 하는 데 초점을 둔 결과입니다. 혹시 마음에 안 드는 부분이 나온다면 틀린 부분을 찾으셨다면 에이콘출판사나 저에게 연락해주세요. 정정하겠습니다.
이 책은 Boost의 통신 라이브러리인 Asio 라이브러리라는 굉장히 구체적인 주제를 다룹니다. 가장 쉬운 통신 프로그램에서부터 SSL을 탑재한 HTTP 통신까지 발전해 나가지요. 단계별로 알아야 할 내용이 빠지지 않고, 고급 예제라고 해도 한눈에 이해할 수 있도록 잘 압축돼 있습니다. 정말로 지금 당장이라고 가져다 쓸 수 있을 만큼 잘 정제된 예제들을 여러분들께 소개할 수 있어 기쁩니다. 클라이언트/서버 구조를 가진 프로그램을 만들어야 하는 독자 여러분들 모두가 이 책에서 원하는 걸 찾을 수 있다면 좋겠습니다.
펼쳐보기
드미트로 라드척
우크라이나 키예프에 살고 있는 소프트웨어 엔지니어다. 어렸을 때부터 과학에 관심이 많아 키예프 폴리테크 대학에서 컴퓨터 과학을 전공했다. 다양한 산업과 사업 영역에서 8년이 넘는 소프트웨어 개발 경험과 깊은 기술 지식을 쌓았으며, 전체는 부분들의 합보다 크다고 믿기 때문에 분산 응용 프로그램 개발에 집중하고 있다. 또한 그는 지식을 나누는 것을 좋아하며, 과학이야말로 일상생활의 지루함을 달래줄 것이라 믿고 있다. 컴퓨터 엔지니어의 다른 영역을 탐험하지 않는 시간에는 자신의 다른 관심사이기도 한 심리학, 역사 또는 예술에 대해 공부하고 있다.
옴긴이 한정애
서울대학교 컴퓨터공학과를 졸업하고 동 대학원에서 무선 통신망에서의 자원 관리에 대한 연구로 박사 학위를 받았다. 최근까지 글로벌 소프트웨어 회사인 SAP에 속한 SAP Labs Korea에서 개발자로 일하다 삼성증권으로 이직했다. 리눅스와 C++ 프로그래밍을 비롯한 여러 가지 프로그래밍 관련 분야에 관심이 많다. 번역서로는 에이콘출판사에서 출간한, 『리눅스 기반의 임베디드 제품 디자인』(2007), 『C++ 템플릿 가이드』(2008), 『두렵지 않은 C++』(2013), 『C++ 표준 라이브러리』(2013), 『Boost C++ 애플리케이션 개발』(2015)이 있다.
펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자
교환/반품 방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
교환/반품 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
교환/반품 비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
교환/반품 불가사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기