장바구니 담기 close

장바구니에 상품을 담았습니다.

클라이언트-서버 웹 앱 만들기

클라이언트-서버 웹 앱 만들기

  • 캐지미어 새터노스
  • |
  • 한빛미디어
  • |
  • 2014-10-30 출간
  • |
  • 300페이지
  • |
  • 183 X 235 X 13 mm /556g
  • |
  • ISBN 9788968481345
판매가

22,000원

즉시할인가

19,800

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
19,800

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

이 책은 자바와 자바스크립트로 REST 방식 웹 앱을 만드는 데 필요한 클라이언트-서버 기술을 모두 담은 지침서다. 제이쿼리, 앵귤러JS를 비롯한 각종 최신 기술을 활용하여 리치하고 확장성 있는 웹 앱을 개발하는 방법을 제시한다. 오늘날 웹 앱 개발에 사용되는 기술과 트렌드에 대한 ‘큰 그림’과 함께, 이해를 돕기 위한 구체적인 예제들도 제공한다. 특히 1인 개발자로서 웹 앱을 구상 중이라면 큰 도움을 받을 것이다.

출판사 리뷰

■ 자바와 자바스크립트로 혼자서 만드는 클라이언트-서버 웹 앱

스마트폰 등장과 HTML 5 표준화 이후로 웹 기술은 비약적인 발전을 거뒀다. 그중에서도 자바스크립트의 발전은 특히 눈부시며, 자바의 중요성은 말로 표현할 수 없을 정도다. 이 책은 이 두 기술을 중심으로 하여 리치하고 확장성 있는 웹 앱을 개발하는 다양한 기술을 소개하여 개발자의 선택의 폭을 돕는다. REST 방식 모던 웹 앱 개발을 위해 필요한 클라이언트-서버 측 기술을 모두 비중 있게 다룬다는 점이 책의 큰 장점이다.

오늘날 웹 앱 개발에서 사용되는 기술과 트렌드에 대한 ‘큰 그림’과 함께, 이해를 돕기 위한 구체적인 예제를 제공한다. 자바와 자바스크립트, 그리고 최신 툴과 프레임워크를 활용하여 클라이언트-서버 아키텍처로 웹 앱을 구성하고 개발하는 방법을 제대로 배울 수 있을 것이다. 올바른 정보에 입각하여 제대로 된 기술을
선택하는 혜안을 기를 수 있고, 특히 1인 개발자로서 웹 앱을 구상 중이라면 소프트웨어 구조 및 설계에 대한 저자의 통찰에서 큰 도움을 받을 것이다.

■ 대상 독자
- 나 홀로 서버와 클라이언트 모두 개발하는 개발자
- HTML/CSS, 자바스크립트, 자바 프로그래밍에 익숙한 웹 앱 개발자
- 개발 도구를 이용해 새로운 기술과 기법을 적용하는 실제 예제를 ‘만들면서 배우는’ 개발자

추천평

“클라이언트-서버 패러다임이 브라우저로 옮겨오면서 오늘날 프로그래머들은 새로운 기술과 구조적인 도전에 직면했다. 이 책은 이러한 복잡성의 핵심을 파고들어, 독자에게 최신 웹 앱 개발에 대한 직관을 제공한다.”
-토니 파월, 트리펙타 테크놀로지의 솔루션 딜리버리 이사

목차

CHAPTER 1 변화는 변화를 낳는다
__1.1 웹 사용자
__1.2 웹 테크놀로지
__1.3 소프트웨어 개발
__1.4 불변의 본질
____1.4.1 웹의 본질
____1.4.2 서버 중심 웹 개발의 해로움
__1.5 왜 클라이언트-서버 웹 앱인가?
____1.5.1 코드 조직화/소프트웨어 아키텍처
____1.5.2 디자인 유연성/오픈 소스 API 활용
____1.5.3 프로토타입 제작
____1.5.4 개발자 생산성
____1.5.5 앱 성능
__1.6 마치며

CHAPTER 2 자바스크립트와 개발 도구
__2.1 자바스크립트 배우기
__2.2 자바스크립트의 역사
__2.3 함수형 언어
____2.3.1 스코프
____2.3.2 일급 함수
____2.3.3 함수 선언과 함수식
____2.3.4 함수 호출
____2.3.5 함수 매개변수
____2.3.6 객체
__2.4 자바 개발자를 위한 자바스크립트
____2.4.1 HelloWorld.java
____2.4.2 HelloWorld.java(변수 사용)
__2.5 프로그램 개발의 모범 사례
____2.5.1 코딩 스타일과 규약
____2.5.2 개발 브라우저
____2.5.3 통합 개발 환경
____2.5.4 단위 테스트
____2.5.5 문서화
__2.6 프로젝트 실습

CHAPTER 3 REST와 JSON
__3.1 REST란 무엇인가?
____3.1.1 자원
____3.1.2 동사(HTTP 요청 메서드)
____3.1.3 URI
__3.2 REST 제약사항
____3.2.1 클라이언트-서버
____3.2.2 스테이트리스
____3.2.3 캐시에 저장
____3.2.4 일관된 인터페이스
____3.2.5 계층적 설계
____3.2.6 주문형 코드
__3.3 HTTP 응답 코드
____3.3.1 성공적인 수행이란?
__3.4 JSON(자바스크립트 객체 표기법)
__3.5 HATEOAS
____3.5.1 REST와 JSON
__3.6 API 시험법과 분류
__3.7 함수형 프로그래밍과 REST
__3.8 프로젝트 실습
__3.9 그 외의 웹 API 도구
__3.10 다시 제약사항 이야기

CHAPTER 4 자바 도구
__4.1 자바 언어
__4.2 자바 가상 머신(JVM)
__4.3 자바 도구
__4.4 빌드 도구
____4.4.1 메이븐의 장점
____4.4.2 메이븐의 기능
____4.4.3 버전 관리
____4.4.4 단위 테스트
__4.5 JSON 자바 라이브러리
__4.6 프로젝트 실습
____4.6.1 자바와 JSON
____4.6.2 JVM 스크립트 언어와 JSON
__4.7 마치며

CHAPTER 5 클라이언트 프레임워크
__5.1 개괄
__5.2 출발점 1: 반응형 웹 디자인
____5.2.1 HTML5 보일러플레이트
____5.2.2 부트스트랩
__5.3 출발점 2 : 자바스크립트 라이브러리와 프레임워크
____5.3.1 브라우저 호환성
____5.3.2 프레임워크
____5.3.3 기능
____5.3.4 인기도
__5.4 스타터 프로젝트 얻기
____5.4.1 저장소에서 직접 다운로드
____5.4.2 스타터 사이트에서 다운로드
____5.4.3 IDE로 생성하는 스타터 프로젝트
__5.5 프론트엔드 엔지니어의 등장
____5.5.1 클라이언트 템플릿
____5.5.2 애셋 파이프라인
____5.5.3 개발 워크플로
__5.6 프로젝트 실습
__5.7 마치며

CHAPTER 6 자바 웹 API 서버
__6.1 더 간단한 서버 솔루션
__6.2 자바 기반의 서버들
____6.2.1 자바 HTTP 서버
____6.2.2 내장형 제티 서버
____6.2.3 레스트릿
____6.2.4 Roo
____6.2.5 내장형 네티 서버
____6.2.6 플레이 서버
____6.2.7 기타 경량 서버 솔루션
__6.3 JVM 기반의 서버들
____6.3.1 자이썬
__6.4 웹 애플리케이션 서버
__6.5 개발에 적용하기
__6.6 마치며

CHAPTER 7 프로젝트 쾌속 개발
__7.1 개발자 생산성
__7.2 개발자와 팀의 워크플로 최적화
____7.2.1 예제 1 : 웹 애플리케이션 수정
____7.2.2 예제 2 : 통합 테스트
____7.2.3 예제 3 : 신규 프로젝트 개발
__7.3 생산성과 소프트웨어 개발의 라이프사이클
____7.3.1 경영과 문화
____7.3.2 기술적 아키텍처
____7.3.3 소프트웨어 도구들
____7.3.4 성능
____7.3.5 테스트
____7.3.6 하부 플랫폼
__7.4 마치며

CHAPTER 8 API 디자인
__8.1 디자인 결정
__8.2 실용적인 웹 API와 RESTful API
__8.3 가이드라인
____8.3.1 명사는 자원, 동사는 HTTP 동작
____8.3.2 쿼리 매개변수를 한정어로 쓰기
____8.3.3 웹 API 버전
____8.3.4 HTTP 헤더
____8.3.5 링크
____8.3.6 응답
____8.3.7 문서
____8.3.8 포매팅 규약
____8.3.9 보안
__8.4 프로젝트 실습
____8.4.1 프로젝트 실행
____8.4.2 서버 코드
____8.4.3 컬과 제이쿼리
__8.5 실무상의 이론

CHAPTER 9 제이쿼리와 자이썬
__9.1 서버 측 : 자이썬
____9.1.1 파이썬 웹 서버
____9.1.2 자이썬 웹 서버
____9.1.3 모의 API
__9.2 클라이언트 측 : 제이쿼리
____9.2.1 DOM 횡단과 처리
____9.2.2 유틸리티 기능
____9.2.3 효과
____9.2.4 이벤트 핸들링
____9.2.5 Ajax
__9.3 제이쿼리와 고수준 추상화
__9.4 프로젝트 실습
____9.4.1 기본적인 HTML
____9.4.2 자바스크립트와 제이쿼리
__9.5 마치며

CHAPTER 10 제이루비와 앵귤러
__10.1 서버 측 : 제이루비와 시나트라
____10.1.1 워크플로
____10.1.2 대화형 루비 셸
____10.1.3 루비 버전 관리자
____10.1.4 패키지
____10.1.5 시나트라
____10.1.6 JSON 프로세싱
__10.2 클라이언트 측 : 앵귤러JS
____10.2.1 모델
____10.2.2 뷰
____10.2.3 컨트롤러
____10.2.4 서비스
__10.3 제이쿼리와 앵귤러 비교
____10.3.1 DOM 혹은 모델 처리
____10.3.2 앵귤러의 비간섭성
__10.4 프로젝트 실습
__10.5 마치며

CHAPTER 11 패키징과 디플로이
__11.1 자바와 JEE 패키징
__11.2 JEE 디플로이
____11.2.1 GUI에서 관리하기
____11.2.2 명령줄에서 관리하기
__11.3 JEE 이외의 디플로이
____11.3.1 웹 앱 외부에 서버를 디플로이
____11.3.2 웹 앱과 서버를 나란히 디플로이
____11.3.3 웹 앱 내부에 서버를 디플로이
__11.4 디플로이 선택이 미치는 영향
____11.4.1 부하 분산
____11.4.2 애플리케이션 디플로이의 자동화
__11.5 프로젝트 실습
____11.5.1 클라이언트
____11.5.2 서버
__11.6 마치며

CHAPTER 12 가상화
__12.1 완전한 가상화
__12.2 가상 머신 구현
____12.2.1 VMWare
____12.2.2 버추얼박스
____12.2.3 아마존 EC2
__12.3 가상 머신 관리
____12.3.1 베이그런트
____12.3.2 패커
____12.3.3 데브옵스 설정 관리
__12.4 컨테이너
____12.4.1 LXC
____12.4.2 Docker
__12.5 프로젝트 실습
____12.5.1 도커 도움말
____12.5.2 이미지와 컨테이너 관리
____12.5.3 도커에서의 자바
____12.5.4 도커와 베이그런트 네트워킹
__12.6 마치며

CHAPTER 13 테스트와 문서화
__13.1 테스트의 유형
____13.1.1 공식 테스트와 비공식 테스트
____13.1.2 테스트의 규모
____13.1.3 누가 누구를 위해서 무엇을 테스트하나?
__13.2 조직 성숙도에 대한 지표로서의 테스트
____13.2.1 프로세스 일관성 측정을 위한 CMM
____13.2.2 일관된 프로세스로 이끄는 메이븐
____13.2.3 일관된 프로세스로 이끄는 BDD
__13.3 테스트 프레임워크
____13.3.1 제이유닛
____13.3.2 재스민
____13.3.3 큐컴버
__13.4 프로젝트 실습
____13.4.1 제이유닛
____13.4.2 재스민
____13.4.3 큐컴버
____13.4.4 메이븐 사이트 보고서
__13.5 마치며

CHAPTER 14 마치며
__14.1 커뮤니티
__14.2 역사
__14.3 정말 마치며

APPENDIX A 제이루비 IRB 및 자바 API
__A.1 그래들을 이용한 셋업
__A.2 제이루비 IRB
____A.2.1 IRB 소개
__A.3 자바 기반의 관계형 데이터베이스
____A.3.1 H2
____A.3.2 HSQLDB
____A.3.3 더비
__A.4 마치며
____B.1 HTTP 1.1 요청 메서드

APPENDIX B RESTful 웹 API 요약
____B.2 HTTP 1.1 응답 코드
__B.3 웹 API용 컬
__B.4 JSON 문법
____B.4.1 JSON의 유형
__B.5 레일로드 다이어그램
____B.5.1 객체
____B.5.2 배열
____B.5.3 값

APPENDIX C 참고문헌

저자소개

저자 캐지미어 새터노스 Casimir Saternos는 베테랑 소프트웨어 개발자. 10년 이상 소프트웨어를 개발했고 『자바 매거진』과 오라클 테크놀로지 네트워크에 글을 기고해왔다. 피프코드 스크린캐스트(Peepcode screencasts)의 여러 프로젝트에 참여했다. 최근에는 자바, 루비, 기타 기술을 사용한 웹 애플리케이션을 만드는 데 시간을 쏟고 있다.

도서소개

[클라이언트-서버 웹 앱 만들기]는 자바와 자바스크립트로 REST 방식 웹 앱을 만드는 데 필요한 클라이언트-서버 기술을 소개한 책이다. 책에서는 제이쿼리, 앵귤러JS를 비롯한 각종 최신 기술을 활용하여 리치하고 확장성 있는 웹 앱을 개발하는 방법을 제시한다.

상세이미지

클라이언트-서버 웹 앱 만들기 도서 상세이미지

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.