길벗·이지톡

도서 IT전문서/IT입문서 모바일
아이폰, 아이패드, 아이팟과 기업 서비스를 연결하는 iOS 네트워크 프로그래밍
정 가
34,000원
I S B N
9788966186426
출 간
2013-11-30
분 량
348쪽
지 은 이
존 스줌스키(John Szumski),나단 존스(Nathan Jones),잭 콕스(Jack Cox)
난 이 도
중급
부 록
예제 코드

기업형 iOS 애플리케이션 개발의 시작, 네트워크 프로그래밍 필수 지침서!

기업형 iOS 애플리케이션 개발 현장에서 익힌
저자들의 네트워크 프로그래밍 기법을 담았다!


iOS 개발 환경과 인터페이스 개발을 익히는 데 시간을 투자했고, 검증된 디자인 패턴을 활용해 기업형 iOS 애플리케이션을 개발하고 싶다면 이 책이 바로 여러분을 위한 책이다. 이 책은 HTTP 요청 수행, 페이로드 처리, 에러 처리, 고급 네트워킹 기법(보안, 최적화, 소켓 통신, 푸시 알림)뿐만 아니라 게임 키트, 봉쥬르 등을 이용한 애플리케이션 간 네트워킹까지를 실무 예제와 함께 자세히 설명하고 있다. 또한 각 예제마다 저자들의 현장 노하우가 꼼꼼히 담겨 있어서 iOS 네트워크 프로그래밍을 이해하고 실무에서 바로 활용할 수 있다. 

이 책에서 다루는 내용

1부 iOS와 기업형 네트워킹의 이해
1장 서버나 다른 기기로 연결하는 데 사용하는 API를 다룬다.
2장 네트워킹 애플리케이션 배포에 도움이 되는 아키텍처 패턴을 다룬다.

2부 HTTP 요청: iOS 네트워킹의 견인차 
3장 URL 로딩 API의 사용법과 iOS 앱에서 HTTP 요청 수행 방법을 다룬다.
4장 XML, JSON, HTML 페이로드 관리 그리고 iOS 애플리케이션과 서버 사이에서 정보 인코딩 기법을 다룬다.
5장 HTTP 요청과 응답에서 에러 처리하는 방법을 다룬다.

3부 고급 네트워킹 기법
6장 클라이언트와 서버 인증서의 유효성 검증과 네트워크 트래픽의 보호 방법을 다룬다.
7장 네트워크 통신의 성능 개선 방법을 다룬다.
8장 iOS 애플리케이션에서 소켓 통신이나 데이터그램 통신을 수행할 수 있는 저수준 네트워킹 API를 다룬다.
9장 애플리케이션 분석과 품질 보증을 위해 기기와 서버 간 통신을 가로채고, 수정하는 기법을 다룬다.
10장 푸시 알림을 활용해 서버와 애플리케이션 간 비동기 통신 방법을 다룬다.

4부 애플리케이션 간 네트워킹
11장 같은 기기의 애플리케이션 사이에서 서로 통신하는 다양한 방법을 다룬다.
12장 게임 키트를 비게임 용도로 활용해서 기기 간에 통신하는 방법을 다룬다.
13장 봉주르를 통신 수단으로 활용해서 여러 기기에 설치된 애플리케이션 간에 통신하는 방법을 다룬다. 

목차

첫째 마당 iOS와 기업형 네트워크의 이해

1장 iOS 네트워킹 기능 소개

01 iOS 네트워킹 프레임워크의 이해
02 iOS 핵심 네트워킹 API
1. NSURLConnection
2. 게임 키트
3. 봉쥬르
4. NSStream
5. CFNetwork
03 BSD 소켓
04 실행 루프
05 정리

2장 서비스 아키텍처 설계

01 원격 퍼사드 패턴
1. 퍼사드 서비스 예제
2. 퍼사드 클라이언트 예제
02 서비스 버전 관리
1. 버전 관리 서비스 예제
2. 버전 관리 클라이언트 예제
03 서비스 로케이터
04 정리


둘째 마당 HTTP 요청: iOS 네트워킹의 견인차

3장 요청 수행

01 HTTP 소개
02 HTTP 요청 및 응답의 이해
1. URL 구조
2. 요청 콘텐츠
3. 응답 콘텐츠
03 고수준 iOS HTTP API
1. 모든 요청 방식에서 사용하는 공통 객체
2. 동기 요청
3. 큐를 활용한 비동기 요청
4. 비동기 요청
04 고급 HTTP 조작
1. HTTP 요청 방식을 활용하는 방법
2. HTTP 쿠키를 조작하는 방법
3. HTTP 고급 헤더를 활용하는 방법
05 정리

4장 페이로드 생성과 처리

01 웹 서비스 프로토콜과 스타일
1. SOAP 프로토콜
2. REST 설계
3. 접근 방식 선택
02 페이로드
1. 페이로드 데이터 타입
2. 응답 페이로드 처리
3. 요청 페이로드 생성
03 정리

5장 에러 처리

01 네트워크 에러의 유형과 원인
1. 운영체제 에러
2. HTTP 에러
3. 애플리케이션 에러
02 에러 처리의 기본 원칙
1. 인터페이스 계약에 에러 처리를 포함한다
2. 에러 상태도 거짓말을 한다
3. 페이로드의 유효성을 검증한다
4. 정상적인 비즈니스 조건과 에러를 분리한다
5. HTTP 상태를 항상 검사한다
6. NSError를 항상 검사한다
7. 에러를 일관성 있게 처리하는 방식을 개발한다
8. 타임아웃을 항상 설정한다
03 네트워크 에러의 처리
1. 디자인 패턴 설명
2. 커맨드 디스패치 패턴 예제
04 정리


셋째 마당 고급 네트워킹 기법

6장 네트워크 트래픽 보호

01 서버와의 통신 확인
02 HTTP를 사용한 인증
1. HTTP 기본 인증, HTTP 다이제스트 인증, NTLM 인증
2. 클라이언트 인증서 인증
03 메시지 무결성을 위한 해싱과 암호화
1. 해싱
2. 메시지 인증 코드
3. 암호화
04 기기 내 인증 정보의 안전한 저장
05 정리

7장 요청 성능 최적화

01 네트워크 성능 측정
1. 네트워크 대역폭
2. 네트워크 레이턴시
3. 기기 전력
02 네트워크 작업의 최적화
1. 요청 대역폭 축소
2. 요청 레이턴시 최소화
3. 네트워크 요청 회피
03 정리

8장 저수준 네트워킹

01 BSD 소켓
1. 소켓 서버 설정
2. 소켓 클라이언트 연결
02 CFNETWORK
03 NSSTREAM
04 정리

9장 네트워크 트래픽 테스트와 조작

01 네트워크 트래픽 관찰
1. 스니핑 하드웨어
2. 스니핑 소프트웨어
02 네트워크 트래픽 조작
1. Charles 설정
2. HTTP 브레이크포인트
3. 바꿔 쓰기 규칙
03 실제 네트워크 상황 시뮬레이션
04 정리

10장 푸시 알림 활용

01 로컬 알림 예약
1. 로컬 알림 생성
2. 로컬 알림 취소
3. 로컬 알림 수신 처리
02 원격 알림 등록 및 반응
1. 원격 알림 설정
2. 원격 알림 등록
3. 원격 알림 페이로드
4. 원격 알림 전송
5. 원격 알림에 대한 반응
03 알림 베스트 프랙티스
04 정리


넷째 마당 애플리케이션 간 네트워킹

11장 애플리케이션 간 통신

01 URL 스키마
1. 커스텀 URL 스키마의 구현
2. 다른 애플리케이션의 존재 감지
3. 고급 통신
02 공유 키체인
1. 기업형 SSO 구현
2. 기존 설치 감지
03 정리

12장 게임 키트를 활용한 기기 간 통신

01 게임 키트 기본
02 P2P 네트워킹
1. 세션 연결
2. 피어로의 데이터 전송
03 클라이언트-서버 통신
04 정리

13장 봉쥬르를 활용한 애드혹 네트워킹

01 제로콘프 개요
1. 어드레싱
2. 레졸루션
3. 검색
02 봉쥬르 개요
1. 서비스 발행
2. 서비스 검색
3. 서비스 해석
4. 서비스와의 통신
03 봉쥬르 기반 애플리케이션 구현
1. 직원용 애플리케이션
2. 고객용 애플리케이션
04 정리
더보기접기

저자

ㆍ지은이 존 스줌스키(John Szumski)

지은이 소개

iOS, 안드로이드, 모바일 웹 플랫폼에 대한 전문 지식을 갖춘 소프트웨어 엔지니어이자 모바일 컨설턴트다. 존은 포춘지500대 기업을 대상으로 사용자 경험과 기술 디자인에 대해 컨설팅한다.


ㆍ지은이 나단 존스(Nathan Jones)

지은이 소개

iOS에 대한 전문 지식과 모바일 웹 개발 경험이 있는 소프트웨어 엔지니어다. 나단은 엔터프라이즈 소프트웨어 컨설팅으로 직장 생활을 시작했고, 애플이 아이폰용 서드파티 앱 개발을 지원하기로 발표하면서부터 모바일 개발을 시작했다.


ㆍ지은이 잭 콕스(Jack Cox)

지은이 소개

시스템 아키텍트이자CapTech Ventures, Inc의 임원이다. 잭은30년 이상 다양한 업무용 소프트웨어를 개발했고 스타트업 3곳에 참여했다. 또한 특허 여러 건을 보유하고 있으며 전문가 그룹을 대상으로 강연을 한다.


연관 프로그램

아래 프로그램은 길벗출판사가 제공하는 것이 아닙니다.
무료로 사용할 수 있는 정보를 안내해 드리니, 지원이 필요하면 해당 프로그렘 제작사로 문의해 주세요.