가입하고 포인트 받기
웹 개발자를 위한 웹을 지탱하는 기술 (HTTP URI HTML 그리고 REST)
야마모토 요헤이 지음
멘토르
 펴냄
28,000 원
25,200원 
앱에서 포인트받고 구매
512쪽 | 2011-05-30
분량 두꺼운책 | 난이도 보통인책
상세 정보
규모의 대소에 상관없이 웹 기술을 사용한 개발 경험이 있는 사람들을 대상 독자로 하고 있으며, 웹 서비스를 어떤 방법으로 웹답게 설계할 것인지를 테마로 하고 있다. 우선, 좋은 웹 서비스 설계의 첫걸음으로서 HTTP와 URI, HTML 등의 스펙을 역사와 설계사상을 엮어 설명하고 있다. 그리고 웹 서비스에서의 설계 과제, 예를 들어 바람직한 URI, HTTP 메서드의 올바른 사용법, 클라이언트와 서버의 역할분담, 설계 프로세스 등에 대해 현시점에서의 베스트 프랙티스를 소개한다. <BR> <BR> 설명에 등장하는 것은 프로그래밍 언어의 코드가 아니라, HTTP의 통신이다. HTTP의 통신을 이해하는 것은 웹 서비스의 동작원리를 아는데 있어서 아주 중요하다. HTTP 라이브러리는 거의 모든 프로그래밍 언어에서 제공하고 있으므로, 익숙한 언어로 어떻게 구현할지 상상하면서 읽어나간다면 좀 더 이해하기 쉬울 것이다.<BR>
더보기
목차

[ 1부 ] 웹 개론
Chapter 01_ 웹이란 무엇인가?
01 모든 것의 기반인 웹
02 다양한 웹의 용도
03 웹을 지탱하는 기술

Chapter 02_ 웹의 역사
01 웹 이전의 인터넷
02 웹 이전의 하이퍼미디어
03 웹 이전의 분산 시스템
04 웹의 탄생
05 웹의 표준화
06 웹 API를 둘러싼 논의
07 모든 것은 웹으로

Chapter 03_ REST-웹 아키텍처 스타일
01 아키텍처 스타일의 중요성
02 아키텍처 스타일로서의 REST
03 리소스
04 스타일을 조합하여 REST를 구성한다
05 REST의 2가지 측면
06 REST의 의미


[ 2부 ] URI
Chapter 04_ URI의 스펙
01 URI의 중요성
02 URI의 구문
(개념탄탄) 예시용 도메인명
03 절대 URI와 상대 URI
04 URI와 문자
05 URI의 길이 제한
06 다양한 스키마
07 URI 구현에서 주의할 점들
(개념탄탄) URI, URL, URN

Chapter 05_ URI의 설계
01 쿨(Cool)한 URI는 변하지 않는다
02 좀처럼 변하지 않는 URI를 만들기 위해서는
03 URI 사용성
04 URI를 변경하고 싶을 때
05 URI 설계의 테크닉
06 URI의 불투명성
07 URI를 강하게 인식하기


[ 3부 ] HTTP
Chapter 06_ HTTP의 기본
01 HTTP의 중요성
02 TCP/IP란 무엇일까
03 HTTP의 버전
04 클라이언트와 서버
05 요청과 응답
06 HTTP 메시지
07 HTTP의 스테이트리스성
08 심플한 프로토콜의 강점

Chapter 07_ HTTP 메서드
01 8개밖에 없는 메서드
02 HTTP 메서드와 CRUD
03 GET - 리소스의 취득
04 POST - 리소스의 작성, 추가
05 PUT - 리소스의 갱신, 작성
06 DELETE - 리소스의 삭제
07 HEAD - 리소스의 헤더 취득
08 OPTIONS - 리소스가 서포트하는 메서드의 취득
09 POST를 PUT/DELETE 대신 사용하는 방법
10 조건부 요청
11 멱등성과 안전성
(개념탄탄) 멱등성의 예
(개념탄탄) GET은 어디까지 안전할까
12 메서드의 오용
13 웹의 성공 이유는 HTTP 메서드에 있다

Chapter 08_ 스테이터스 코드
01 스테이터스 코드의 중요성
02 스테이터스 라인의 복습
03 스테이터스 코드의 분류와 의미
04 자주 사용되는 스테이터스 코드
05 스테이터스 코드와 에러처리
06 스테이터스 코드의 오용
07 스테이터스 코드를 의식해서 설계한다
(개념탄탄) 스테이터스 코드의 구현

Chapter 09_ HTTP 헤더
01 HTTP 헤더의 중요성
02 HTTP 헤더의 태생
03 날짜와 시간
04 MIME 미디어 타입
05 언어 태그
06 콘텐트 네고시에이션
07 Content-Length와 청크(chunk) 전송
08 인증
(개념탄탄) URI 공간
(개념탄탄) HTTPS
(개념탄탄) OpenID와 OAuth
09 캐시
(개념탄탄) ETag의 계산
10 지속적 접속
11 그 밖의 HTTP 헤더
12 HTTP 헤더를 활용하기 위해서


[ 4부 ] 하이퍼미디어 포맷
Chapter 10_ HTML
01 HTML이란 무엇인가
(개념탄탄) HTML 5
(개념탄탄) Internet Explorer와 XHTML
02 미디어 타입
03 확장자
04 XML의 기초지식
05 HTML의 구성요소
06 링크
07 링크 관련 - 링크의 의미를 지정한다
08 하이퍼미디어 포맷으로서의 HTML

Chapter 11_ microforms
01 심플한 시맨틱 웹
02 시맨틱스(의미론)란
03 RDF와 microformats
04 microformats의 표준화
05 microformats의 분류
06 microformats와 RDFa
07 microformats의 가능성
08 리소스 표현으로서의 microformats

Chapter 12_ Atom
01 Atom이란 무엇인가?
02 Atom의 리소스 모델
03 엔트리 - Atom의 최소단위
04 피드 - 엔트리의 집합
05 Atom의 확장
06 Atom을 활용한다

Chapter 13_ Atom Publishing Protocol
01 Atom Publishing Protocol이란 무엇인가
02 AtomPub의 리소스 모델
03 블로그 서비스
04 멤버 리소스의 조작
05 서비스 문서
06 AtomPub에 적합한 웹 API

Chapter 14_ JSON
01 JSON이란 무엇인가
02 미디어 타입
03 확장자
04 자료형
05 JSON에 의한 크로스 도메인 통신
06 하이퍼미디어 포맷으로서의 JSON


[ 5부 ] 웹 서비스의 설계
Chapter 15_ 읽기 전용 웹 서비스의 설계
01 리소스 설계란 무엇인가
02 리소스 지향 아키텍처의 어프로치
03 우편번호 검색 서비스의 설계
(개념탄탄) 어드레스 가능성, 접속성, 유니폼 인터페이스, 스테이트리스성
04 웹 서비스에서 제공할 데이터를 특정한다
05 데이터를 리소스로 나눈다
06 리소스에 URI로 이름을 부여한다
07 클라이언트에 제공할 리소스의 표현을 설계한다
08 링크와 폼을 이용해 리소스와 리소스를 연결한다
09 이벤트의 표준적인 코스를 검토한다
10 에러에 대해서 검토한다
11 리소스 설계의 스킬

Chapter 16_ 쓰기 가능한 웹 서비스의 설계
01 쓰기 가능한 웹 서비스의 어려운 점
02 쓰기 가능한 우편번호 서비스의 설계
03 리소스의 작성
04 리소스의 갱신
05 리소스의 삭제
06 일괄처리
07 트랜잭션
08 배타제어
09 설계의 밸런스

Chapter 17_ 리소스의 설계
01 리소스 지향 아키텍처 접근방식의 함정
02 관계 모델로부터의 도출
03 객체지향 모델로부터의 도출
04 정보 아키텍처로부터의 도출
05 리소스 설계에서 가장 중요한 것

[ 부록 ]
부록 A_ 스테이터스 코드 일람
a.1 1xx(처리중)
a.2 2xx(성공)
a.3 3xx(리다이렉트)
a.4 4xx(클라이언트 에러)
a.5 5xx(서버 에러)

부록 B_ HTTP 헤더 일람
b.1 서버정보
b.2 클라이언트 정보
b.3 리소스 정보
b.4 콘텐트 네고시에이션
b.5 조건부 요청
b.6 부분적 GET
b.7 캐시
b.8 인증
b.9 청크 전송
b.10 기타

부록 C_ 참고문헌 소개

[ 후기 ]

더보기
저자 정보
야마모토 요헤이
블로그: http://yohei-y.blogspot.com 1975년생. 주식회사 리코그룹 기술개발본부에서 웹 관련 연구개발에 종사하며, 개인 블로그에서 웹과 XML에 관련된 기사를 쓰고 있다. 좋아하는 프로그래밍 언어는 Java와 Ruby. 좋아하는 HTTP 메서드는 GET, 스테이터스 코드는 200 OK, 헤더는 Content-Type.
더보기
남긴 글 0
앱에서 바로 보기