HOME > Detail View

Detail View

(기적을 부르는) 안드로이드 통신 프로그래밍 / 개정판

(기적을 부르는) 안드로이드 통신 프로그래밍 / 개정판 (Loan 4 times)

Material type
단행본
Personal Author
박헌재
Title Statement
(기적을 부르는) 안드로이드 통신 프로그래밍 / 박헌재 지음
판사항
개정판
Publication, Distribution, etc
서울 :   투에이치앤에스,   2017  
Physical Medium
912 p. : 삽화 ; 25 cm
ISBN
9791195570522
General Note
색인수록  
부록: 1. HTTP 상태코드, 2. 특수문자의 URL 인코딩  
000 00000cam c2200205 c 4500
001 000045987006
005 20190618100315
007 ta
008 190618s2017 ulka 001c kor
020 ▼a 9791195570522 ▼g 93000
035 ▼a (KERIS)BIB000014573048
040 ▼a 211048 ▼c 211048 ▼d 211009
082 0 4 ▼a 005.268 ▼2 23
085 ▼a 005.268 ▼2 DDCK
090 ▼a 005.268 ▼b 2017z6
100 1 ▼a 박헌재
245 2 0 ▼a (기적을 부르는) 안드로이드 통신 프로그래밍 / ▼d 박헌재 지음
250 ▼a 개정판
260 ▼a 서울 : ▼b 투에이치앤에스, ▼c 2017
300 ▼a 912 p. : ▼b 삽화 ; ▼c 25 cm
500 ▼a 색인수록
500 ▼a 부록: 1. HTTP 상태코드, 2. 특수문자의 URL 인코딩
945 ▼a KLPA

Holdings Information

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.268 2017z6 Accession No. 121249311 Availability Available Due Date Make a Reservation Service B M

Contents information

Book Introduction

<기적을 부르는 안드로이드 통신 프로그래밍>의 개정판이다. 자바나 안드로이드의 통신 프로그램을 배우고자 하는 이들이 두 프로그램을 분해하고 통신에 대한 전문지식을 함양할 수 있도록 구성되었다. 이론을 모르고 예제 그대로 코딩하고 테스트만을 수행하더라도 기본적인 통신 프로그램을 작성할 수 있도록 안내한다.

통신의 기초 지식을 기반으로 하여 통신 프로토콜이 요구하는 기능을 자바나 안드로이드에서 어떻게 구현하는냐에 초점을 맞추고 있으며, 동일한 기능을 지원하는 자바와 안드로이드 라이브러리가 제공하는 클래스와 메소드를 검토하고 있다. REST API와 함께 DOM 파서와 SAX 파서, 제이슨도 소개한다.

이 책의 주요 특징은 다음과 같습니다.
1. 통신 프로토콜이 가지는 독특한 특성을 다룹니다.

독자 여러분들이 특정 자바 클래스를 모른다하더라도 소켓 프로그램과 같은 기반 기술과 통신 프로토콜을 사용하여 서버 또는 클라이언트가 요구하는 데이터 또는 리소스를 전송하거나 취득할 수 있는 기술을 소개합니다. 그 밖에 앞선 기술인 IPv6 프로토콜과 HTTP/2.0 프로토콜에 대해서도 다루고 있습니다.

2. 자바 기반의 통신 프로그램입니다.
안드로이드이란 이름으로 통신 프로그램을 소개하고 있지만, 이 책에서 소개하는 통신 프로그램은 자바가 실행되는 모든 운영 체제에서 사용이 가능합니다.

예를 들어 안드로이드의 8버전에서 소개될 예정인 비동기채널(AsynchronousSocketChannel)과 관련된 클래스는 이미 자바에서 소개되어습니다. 따라서 이 책은 미래 버전이라 할 수 있는 비동기채널을 다양한 각도로 미리 소개합니다.

3. REST API를 다룹니다.
최근들어 클라우드 컴퓨팅이 새로운 비즈니스 모델로 각광받으면서 업체에서 이제 너도나도 REST API를 제공하고 있습니다. REST API는 HTTP 프로토콜을 기초로 리소스를 서버에 등록하거나 다운로드하는 기능을 제공합니다.

이 책은 HTTP 프로토콜과 REST API를 다루기 때문에 자연스럽게 OAuth 2.0 인증과 자료를 파싱하는 데 필요한 DOM 파서와 SAX 파서 그리고 제이슨을 배우게 됩니다.

4. OSI 7 모델의 계층별 시나리오를 제공합니다.
이 책은 아래 그림과 같이 OSI 7 참조 모델의 개별 계층별로 시나리오를 만들어 적용되는 프로토콜을 소개하고 동시에 해당 계층을 지원하는 자바 클래스와 프로그램을 소개한다.

이 책이 일반 독자들 입장에서 이해하기 쉽게 작성하였다 하더라도 개인의 차이가 있기 때문에 일부 독자분들에게 어려울 수 있습니다. 만약 다소 어렵다고 느끼시는 분들은 다음과 같은 원칙하에서 공부하시기 바랍니다.
1 원칙 : 알면 모든 것이 쉬워진다.
2 원칙 : 알아두면 좋은 것보다 알아야만 하는 것을 우선적으로 배우는 게 중요하다.
3 원칙 : 단순히 눈으로 보는 것보다 귀와 손을 활용하라.

이 책에서 소개하는 예제를 구현하기 위해 사용한 단말기는 버전별로 5대이고 서버는 3대 또한 공유기와 개발용 PC가 각각 1대씩 사용하였습니다. 그러나 블루투스나 와이파이 다이렉트 등 필수불가결하게 요구하는 기능 등을 제외하고 되도록 독학을 하는 분들이 개발하고 테스트할 수 있도록 개인 PC에서 실행되는 환경을 만들고 자 노력하였습니다.


출판사 리뷰

'기적을 부르는 안드로이드 통신 프로그래밍'은 다음과 같은 특징을 갖고 있습니다.

① 초보자들도 이해하는데 무리가 없도록 쉽게 쓰여졌습니다.
② 통신의 기초부터 고급 통신 기술까지 폭 넓게 다룹니다.
③ 이론을 기반으로 실무에서 적용할 수 있는 예제들로 보강되었습니다.
④ 프로그램을 개발하고 테스트할 수 있는 개발 환경에 주안점을 두었습니다.
⑤ 텔넷이나 아웃룩처럼 우리 주변에 널리 보급된 도구들과 연동하는 방법을 소개합니다.
⑥ 유선과 다른 무선 통신만의 독특한 특징을 블루투스와 NFC 그리고 와이파이를 통해 알려줍니다.
⑦ OAuth 2.0 사용자 인증처럼 기업이 선호하는 인증 기술을 소개합니다.
⑧ 구글 드라이브와 구글 이메일 그리고 구글맵을 다양한 방식으로 접근합니다.

어떤 독자를 위한 책인가?
이 책은 자바나 안드로이드의 통신 프로그램을 배우고자 하시는 고객분들을 대상으로 조금 깊게 자바나 안드로이드를 분해하고 통신에 대한 전문지식을 함양할 수 있도록 제작되었습니다. 그러나 이 책은 자바의 기초를 다루지 않기 때문에 독자분들은 자바와 안드로이드에 대한 기본적인 지식을 갖고 있어야 합니다.

이 책은 일반 통신 서적과 다릅니다.
대부분의 다른 통신 서적들은 주로 개발 언어를 중심으로 소켓 통신이나 TCP/IP를 다루거나 또는 예제없이 통신 이론만을 소개합니다. 그러나 이 책은 "통신의 기초 지식을 기반으로 하여 통신 프로토콜이 요구하는 기능을 자바나 안드로이드에서 어떻게 구현하는냐"하는 데 초점이 맞추어져 있습니다. 더불어 동일한 기능을 지원하는 자바와 안드로이드 라이브러리가 제공하는 클래스와 메소드를 검토합니다.

차원이 다른 새로운 기술을 소개합니다.
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: : Aladin

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판) 빛과 소리의 향연! 안드로이드 미디어 프로그래밍

Information Provided By: : Aladin

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장. 블루투스와 헤드셋 
5.01 블루투스 활성화 
5.02 블루투스 검색 응답과 페어링 
5.03 블루투스 데이터 통신 
5.04 블루투스 서비스 검색 
5.05 블루투스 헤드셋과 스테레오 오디오 서비스 
5.06 마무리 

06장. 무선랜과 와이파이 다이렉트 
6.01 무선랜의 특징 
6.02 무선랜 상태 정보 확인 
6.03 와이파이 다이렉트 
6.04 와이파이 다이렉트의 프로그래밍 작업 
6.05 와이파이 잠금과 멀티캐스트 설정 
6.06 마무리 

7장. NFC(Near Field Communication) 
7.01 NFC 작동 모드 
7.02 NDEF 포맷 
7.03 태그 디스패치 시스템 
7.04 포그라운드 디스패치 시스템 
7.05 NDEF 메시지 생성과 파싱 
7.06 NDEF 메시지 전송 
7.07 안드로이드 빔(Beam) 
7.08 마무리 

8장. HTTP 통신 
8.01 HTTP 프로토콜 
8.02 HTTP 헤더 
8.03 엔티티 헤더와 엔티티 본문 
8.04 URI와 URL 
8.05 URLConnection 클래스 
8.06 HttpURLConnection 클래스 
8.07 HTTP 쿠키 
8.08 HTTP 사용자 인증 
8.09 마무리 

9장. 웹뷰와 자바 스크립트 
9.01 웹뷰 클래스 
9.02 자바 스크립트 
9.03 웹크롬클라이언트 클래스 
9.04 사용자 기본 접근 인증 
9.05 마무리 

10장. DOM 파서와 SAX 파서 그리고 제이슨 
10.01 DOM 파싱 프로세스 
10.02 XML 문서 생성 
10.03 안드로이드 XML문서 파싱 작업 
10.04 SAX 파싱 프로세스 
10.05 제이슨 
10.06 마무리 

11장. 위치 기반 서비스 
11.01 구글 플레이 위치 서비스 
11.02 지오펜스(Geofences) 서비스 
11.03 마무리 

12장. 구글맵 버전 2.0 
12.01 구글 API KEY 얻기 
12.02 구글맵의 XML 레이아웃 
12.03 구글맵에 위치 표시 
12.04 구글맵 이벤트와 위치 설정 
12.05 장소 검색 서비스 
12.06 마무리 

13장. . OAuth2.0 인증과 드라이브 서비스 
13.01 OAuth 2.0 인증 
13.02 OAuth2.0 인증 프로세스 
13.03 계정관리자로부터 OAuth 2.0 인증 
13.04 구글 플레이 서비스를 사용한 OAuth 2.0 인증 
13.05 구글 드라이브 서비스 
13.06 드라이브 내 파일 검색 
13.07 마무리 

14장. 이메일 전송과 수신 
14.01 SMTP 프로토콜 
14.02 마임 타입 
14.03 안드로이드 메일 전송 프로그램 
14.04 POP3 프로토콜과 IMAP 프로토콜 
14.05 이메일 메시지 
14.06 마무리 

부록 1. HTTP 상태코드 
부록 2. 특수문자의 URL 인코딩 
찾아보기

New Arrivals Books in Related Fields