000 | 00000cam c2200205 c 4500 | |
001 | 000046009147 | |
005 | 20191216165212 | |
007 | ta | |
008 | 191216s2019 ulka 001c kor | |
020 | ▼a 9791195570546 ▼g 93000 | |
040 | ▼a 211009 ▼c 211009 ▼d 211009 | |
082 | 0 4 | ▼a 005.268 ▼2 23 |
085 | ▼a 005.268 ▼2 DDCK | |
090 | ▼a 005.268 ▼b 2019z5 | |
100 | 1 | ▼a 박헌재 |
245 | 2 0 | ▼a (기적을 부르는) 안드로이드 통신 프로그래밍 / ▼d 박헌재 지음 |
250 | ▼a 3판 | |
260 | ▼a 서울 : ▼b 투에이치앤에스, ▼c 2019 | |
300 | ▼a 908 p. : ▼b 삽화 ; ▼c 25 cm | |
500 | ▼a 색인수록 | |
500 | ▼a 부록: HTTP 상태코드, 블루투스 아키텍처 |
Holdings Information
No. | Location | Call Number | Accession No. | Availability | Due Date | Make a Reservation | Service |
---|---|---|---|---|---|---|---|
No. 1 | Location Sejong Academic Information Center/Science & Technology/ | Call Number 005.268 2019z5 | Accession No. 151348186 | Availability Available | Due Date | Make a Reservation | Service |
Contents information
Book Introduction
기적을 부르는 안드로이드 통신 프로그래밍, 제3판. 특정 자바 클래스를 모른다하더라도 소켓 프로그램과 같은 기반 기술과 통신 프로토콜을 사용하여 서버 또는 클라이언트가 요구하는 데이터 또는 리소스를 전송하거나 취득할 수 있는 기술을 소개한다. 그 밖에 앞선 기술인 IPv6 프로토콜과 HTTP/2.0 프로토콜에 대해서도 다룬다.
안드로이드이란 이름으로 통신 프로그램을 소개하고 있지만, 이 책에서 소개하는 통신 프로그램은 자바와 코틀린이 실행되는 모든 운영 체제에서 사용이 가능하다. 또한 HTTP 프로토콜과 REST API를 다루기 때문에 자연스럽게 OAuth 2.0 인증과 데이터를 파싱하는 데 필요한 DOM 파서와 SAX 파서 그리고 제이슨을 배우게 된다.
이 책의 주요 특징은 다음과 같습니다.
1. 통신 프로토콜이 가지는 독특한 특성을 다룹니다.
독자 여러분들이 특정 자바 클래스를 모른다하더라도 소켓 프로그램과 같은 기반 기술과 통신 프로토콜을 사용하여 서버 또는 클라이언트가 요구하는 데이터 또는 리소스를 전송하거나 취득할 수 있는 기술을 소개합니다. 그 밖에 앞선 기술인 IPv6 프로토콜과 HTTP/2.0 프로토콜에 대해서도 다루고 있습니다.
2. 자바와 코틀린 기반의 통신 프로그램입니다.
안드로이드이란 이름으로 통신 프로그램을 소개하고 있지만, 이 책에서 소개하는 통신 프로그램은 자바와 코틀린이 실행되는 모든 운영 체제에서 사용이 가능합니다.
3. REST API를 다룹니다.
최근들어 클라우드 컴퓨팅이 새로운 비즈니스 모델로 각광받으면서 업체에서 이제 너도나도 모두 REST API를 제공하고 있습니다. REST API는 HTTP 프로토콜을 기초로 리소스를 서버에 등록하거나 다운로드하는 기능을 제공합니다.
이 책은 HTTP 프로토콜과 REST API를 다루기 때문에 자연스럽게 OAuth 2.0 인증과 데이터를 파싱하는 데 필요한 DOM 파서와 SAX 파서 그리고 제이슨을 배우게 됩니다.
4. OSI 7 모델의 계층별 시나리오를 제공합니다.
이 책은 OSI 7 참조 모델의 개별 계층별로 적용되는 프로토콜을 소개하고 동시에 해당 계층을 지원하는 자바 클래스와 프로그램을 소개합니다.
"이 책이 일반 독자들 입장에서 이해하기 쉽게 작성하였다"하더라도 개인의 차이가 있기 때문에 일부 독자분들에게 어려울 수 있습니다. 만약 다소 어렵다고 느끼시는 분들은 다음과 같은 원칙하에서 공부하시기 바랍니다.
1 원칙 : 알면 모든 것이 쉬워진다.
2 원칙 : 알아두면 좋은 것보다 알아야만 하는 것을 우선적으로 배우는 게 중요하다.
3 원칙 : 단순히 눈으로 보는 것보다 귀와 손을 활용하라.
'기적을 부르는 안드로이드 통신 프로그래밍'은 다음과 같은 특징을 갖고 있습니다.
① 초보자들도 이해하는데 무리가 없도록 쉽게 쓰여졌습니다.
② 통신의 기초부터 고급 통신 기술까지 폭 넓게 다룹니다.
③ 이론을 기반으로 실무에서 적용할 수 있는 예제들로 보강되었습니다.
④ 프로그램을 개발하고 테스트할 수 있는 개발 환경에 주안점을 두었습니다.
⑤ 개발한 프로그램이 우리 주변에 널리 보급된 텔넷이나 아웃룩들과 연동하는 방법을 소개합니다.
⑥ 유선과 다른 무선 통신만의 독특한 특징을 블루투스와 와이파이를 통해 알려줍니다.
⑦ OAuth 2.0 사용자 인증처럼 기업이 선호하는 인증 기술을 소개합니다.
⑧ 구글 드라이브와 구글 이메일 그리고 구글맵을 다양한 방식을 소개합니다.
어떤 독자를 위한 책인가?
이 책은 통신 프로그램을 배우고자 하시는 고객분들을 대상으로 조금 깊게 안드로이드를 분해하고 통신에 대한 전문지식을 함양할 수 있도록 제작되었습니다. 그러나 이 책은 자바나 코틀린의 기초를 다루지 않기 때문에 독자분들은 자바를 비롯하여 코틀린이나 안드로이드에 대한 기본적인 지식을 갖고 있어야 합니다.
이 책은 일반 통신 서적과 다릅니다.
대부분의 다른 통신 서적들은 주로 개발 언어를 중심으로 소켓 통신이나 TCP/IP를 다루거나 또는 예제없이 통신 이론만을 소개합니다. 그러나 이 책은 "통신의 기초 지식을 기반으로 하여 통신 프로토콜이 요구하는 기능을 자바나 코틀린으로 어떻게 구현하는냐"하는 데 초점이 맞추어져 있습니다. 그 밖에 REST API와 함께 XML 문서를 파싱(Parsing)하는데 사용하는 DOM 파서와 SAX 파서 그리고 제이슨을 소개합니다.
차원이 다른 새로운 기술을 소개합니다.
IPv4와 IPv6 차이와 함께 IPv6 보급과 관련된 문제점을 알아봅니다. 그리고 최근에 발표된 HTTP/2.0 프로토콜을 소개하고 앞으로 안드로이드 버전 8에 적용될 예정인 비동기소캣 프로그램이 기존 소캣 프로그램과 어떤 차이가 있는지 살펴봅니다. 그 밖에 REST API와 함께 XML 문서를 파싱(Parsing)하는데 사용하는 DOM 파서와 SAX 파서 그리고 제이슨을 소개합니다.
백개가 넘는 다양한 예제
이 책은 크고 작은 수백개의 예제로 구성되어 있습니다. 따라서 이론을 모른다 하더라도 예제 그대로 코딩하고 테스트만을 수행하더라도 기본적인 통신 프로그램을 작성할 수 있습니다.
이 책에서 제공하는 소스들 가운데 아주 간단한 자바 프로그램을 제외하고 대부분의 안드로이드 소스들은 'http://cafe.naver.com/webdroid' 웹사이트에서 아파치 라이센스 2.0으로 제공합니다.
그 이외에 자세한 내용은 저자(hurdsen@gmail.com)에게 문의하시기 바랍니다.
Information Provided By: :

Author Introduction
박헌재(지은이)
25년간의 유닉스와 리눅스 및 자바 프로그래밍 분야에서 개발을 수행했던 전문가입니다. 그의 경력은 다음과 같습니다. 국내 최초 ERP 컨설턴트 90년 중반 국내 ERP 패키지를 최초로 도입하였을 때, 기술팀장을 맡아 ERP를 UNIX에 포팅하는 작업과 함께 ERP 최적화 작업 그리고 현지화 작업을 수행하였습니다. 커널 개발자 ERP 패키지를 최초 Unix에 포팅하는 작업을 수행한 이래 리눅스 커널 2.4 버전부터 시작하여 버그 리포트를 작성하였고 하드웨어 제조사들과 공동 연구 작업을 비롯하여 네트워크 장비에 탑재되는 임베디드 리눅스 커널을 제조하였습니다. 보안 네트워크 장비 개발 L4 스위치와 네트워크 장비 개발 그리고 방화벽, VPN, IPS와 같이 보안 장비 개발 등에 이르기까지 다양한 애플리케이션, 하드웨어/소프트웨어 Q/A 테스트 작업 그리고 장애처리 업무를 수행하였습니다. 만약 책의 내용을 보고 문의 사항이 있으면, 필자에게 이메일('hurdsen@gmail.com')이나 "http://cafe.naver.com/webdroid" 카페 사이트에 방문하여 글을 올려 주시기 바랍니다. 주요 저서는 다음과 같습니다. 안드로이드 C-C++ 프로그래밍(개정판) 시작하자! C++17 프로그래밍(개정판) 기적을 부르는 안드로이드 통신 프로그래밍(3판) 빛과 소리의 향연! 안드로이드 미디어 프로그래밍

Table of Contents
01장. 기본 지식과 네트워크 환경 구축
1.01 통신 표준과 사용 용어
1.02 IP 주소
1.03 인터넷 프로토콜
1.04 TCP/UDP 프로토콜
1.05 개발 환경 구축
1.06 마무리
02장. 소켓 통신
2.01 InetAddress 클래스
2.02 SocketAddress 클래스와 NetworkInterface 클래스
2.03 클라이언트 소켓 프로그래밍
2.04 서버소켓 프로그래밍
2.05 소켓 통신과 스레드
2.06 데이터그램 프로그램
2.07 멀티캐스트 통신
2.08 마무리
03장. 안드로이드 소켓 통신
3.01 안드로이드 네트워크 환경 조사
3.02 에코 서버 애플리케이션
3.03 에코 클라이언트 애플리케이션
3.04 안드로이드 채팅 애플리케이션
3.05 데이터그램 프로그램
3.06 마무리
04장. 소켓채널 통신
4.01 NIO 버퍼
4.02 소켓통신과 소켓채널 통신
4.03 클라이언트의 소켓채널 작업
4.04 서버소켓채널
4.05 비동기소켓채널
4.06 안드로이드 소캣채널
4.07 채팅 클라이언트
4.08 데이터그램 채널
4.09 마무리
5장. HTTP 통신
5.01 HTTP 프로토콜
5.02 일반 헤더
5.03 요청 헤더와 응답 헤더
5.04 엔티티 헤더와 엔티티 본문
5.05 URI와 URL
5.06 URLConnection 클래스
5.07 HttpURLConnection 클래스
5.08 HTTP 쿠키
5.09 마무리
6장. 웹뷰와 자바 스크립트
6.01 웹뷰 클래스
6.02 자바 스크립트
6.03 웹크롬클라이언트 클래스
6.04 쿠키관리
6.05 위치 정보
6.06 파일 다운로드 작업
6.07 마무리
7장. DOM 파서와 SAX 파서 그리고 제이슨
7.01 DOM 파싱 프로세스
7.02 XML 문서 생성
7.03 안드로이드 파싱 작업
7.04 SAX 파싱 프로세스
7.05 android.sax 패키지와 android.util.Xml 클래스
7.06 제이슨
7.07 마무리
8장. 블루투스
8.01 블루투스 활성화
8.02 블루투스 접속
8.03 블루투스 검색과 페어링
8.04 블루투스 데이터 통신
8.05 블루투스 서비스 검색
8.06 블루투스 헤드셋과 스테레오 오디오 서비스
8.07 마무리
9장. 무선랜과 와이파이 다이렉트
9.01 무선랜의 특징
9.02 무선랜 상태 정보 확인
9.03 와이파이 다이렉트
9.04 와이파이 다이렉트의 프로그래밍 작업
9.05 와이파이 잠금과 멀티캐스트 설정
9.06 마무리
10장. 구글맵 버전 2.0
10.01 구글 API KEY 얻기
10.02 구글맵의 XML 레이아웃
10.03 구글맵에 위치 표시
10.04 구글맵 이벤트와 위치 설정
10.05 구글 플레이 위치 서비스
10.06 지오펜스(Geofences) 서비스
10.07 장소 검색 서비스
10.08 구글 Places SDK Client
10.09 마무리
11장. 통신 보안과 OAuth2.0 사용자 인증
11.01 공개키 구조(PKI)
11.02 OAuth 2.0 인증
11.03 OAuth2.0 인증 프로세스
11.04 계정관리자로부터 OAuth 2.0 인증
11.05 구글 플레이 서비스를 사용한 OAuth 2.0 인증
11.06 구글 드라이브 서비스
11.07 드라이브 내 파일 검색
11.08 마무리
12장. 이메일 전송과 수신
12.01 SMTP 프로토콜
12.02 사용자 인증
12.03 마임 타입
12.04 안드로이드 메일 전송 프로그램
12.05 POP3 프로토콜과 IMAP 프로토콜
12.06 이메일 수신
12.07 이메일 메시지
12.08 멀티파트 메일 메시지
12.09 구글 웹메일 서비스
12.10 마무리
13장. SMS와 MMS
13.01 액세스 포인트 네임(APN)
13.02 인텐트를 사용한 SMS/MMS 메시지 전송
13.03 SMS 메시지 전송
13.04 SMS 메시지 수신
13.05 마무리
부록 1. HTTP 상태코드
부록 2. 블루투스 아키텍처
찾아보기
Information Provided By: :
