본문 바로가기

추천 검색어

실시간 인기 검색어

jQuery Deferreds 디퍼드 제대로 이해하기

한빛미디어

2014년 09월 05일 출간

(개의 리뷰)
( 0% 의 구매자)
eBook 상품 정보
파일 정보 pdf (2.00MB)
ISBN 9788968487217
쪽수 182쪽
지원기기 교보eBook App, PC e서재, 리더기, 웹뷰어
교보eBook App 듣기(TTS) 불가능
TTS 란?
텍스트를 음성으로 읽어주는 기술입니다.
  • 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를​ 읽을 수 있습니다.
  • 전자책 화면에 표기된 주석 등을 모두 읽어 줍니다.
  • 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.
  • '교보 ebook' 앱을 최신 버전으로 설치해야 이용 가능합니다. (Android v3. 0.26, iOS v3.0.09,PC v1.2 버전 이상)

PDF 필기 Android 가능 (iOS예정)
소득공제
소장
정가 : 13,000원

쿠폰적용가 11,700

10% 할인 | 5%P 적립

이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.

카드&결제 혜택

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
  • 리뷰 작성 시, e교환권 추가 최대 300원

작품소개

이 상품이 속한 분야

jQuery의 Deferred(디퍼드)를 제대로 배워보자!

jQuery는 현재 가장 인기 있는 자바스크립트 라이브러리 중 하나다. 웹에서 클라이언트 사이드 스크립트 언어를 단순화할 수 있어, 많은 개발자가 사용하고 있다.

웹은 빠르게 변화하고 있다. 다양한 서비스가 웹으로 통합되면서, 웹 사용이 폭증하고 있다고 해도 과언이 아니다. 다양한 서비스가 웹으로 제공되다 보니, 웹 프로그램이 점점 복잡해지고 있다. 그 중 하나가 웹의 비동기 함수 호출이다. 웹은 기본적으로 실시간성을 보장하지 않는 비동기적 환경이다. 하지만 최근에는 시시각각 바뀌는 정보를 웹 페이지 로딩이 끝난 웹 브라우저에 즉시 전달해주는 동기식 서비스가 증가하고 있는데, 이러한 시스템을 잘못 만들면 성능이 현저히 저하되어 많은 개발자가 고심하고 있다.

jQuery의 디퍼드(Deferreds), 프로미스(Promise), 콜백(Callback)을 사용하면 클라이언트와 서버 애플리케이션에서의 비동기 호출을 적절하게 처리하여 동기식 서비스를 구현할 수 있다. 하지만 개념과 사용 방법이 어려워 개발자들이 이들의 장점을 제대로 이용하지 못하고 있다.

이 책은 디퍼드와 프로미스의 개념과 사용 방법, 콜백을 피하는 방법 등을 알려준다. 많은 예제로 디퍼드와 프로미스를 언제, 어떻게 사용해야 하는지 소스 코드로 직접 보여 주어 이벤트 기반 프로그래밍의 방법을 익힐 수 있다.
1 소개
1.1 생각할 거리
1.2 디퍼드와 프로미스의 정의
1.3 낯익은 프로미스

2 jQuery 디퍼드 API
2.1 프로미스 사용하기
2.2 디퍼드 작성하기
2.3 한 눈에 정리하기
2.4 디퍼드 다이나믹스
2.5 더는 지원되지 않는 프로미스 메소드
2.6 jQuery 디퍼드 API의 변경 사항
3 디퍼드 레시피
3.1 setTimeout 함수 대체하기
3.2 크롬 익스텐션에서의 메시징
3.3 크롬의 로컬 스토리지에 접근하기
3.4 프로미스를 반환하는 함수들을 하나씩 실행시키기
3.5 emptyPromise 메소드와 프로미스 풀
3.6 구글 지도 표현하기
3.7 웹 워커와 통신하기
3.8 웹 소켓 사용하기
3.9 실패하는 디퍼드 호출을 자동으로 재시도하기
3.10 메모이제이션
3.11 진행 중인 함수 호출의 단기 메모이제이션
3.12 프로미스 이벤트의 스트리밍
3.13 프로미스의 집합에서 첫 번째 결과 얻기
3.14 디퍼드 큐
3.15 when2: 개선된 jQuery.when
3.16 여러 프로미스를 타임아웃시키기
3.17 스스로 운명 결정하기
3.18 프로미스 비활성화시키기

4 디퍼드 수련하기
4.1 정말로 jQuery 디퍼드를 이해하고 있는가?
4.2 프로미스/A+
4.3 프로미스는 함수 호출을 위한 일급 객체다.
4.4 비동기적 데이터 구조체
4.5 디퍼드의 이점
4.6 디퍼드의 어려움
4.7 참고 자료

부록 A 과제 힌트
setTimeout 함수 대체하기
크롬 익스텐션에서의 메시징
크롬의 로컬 스토리지에 접근하기
프로미스를 반환하는 함수들을 하나씩 실행시키기
emptyPromise 메소드와 프로미스 풀
구글 지도 표현하기
웹 워커와 통신하기
웹 소켓 사용하기
실패하는 디퍼드 호출을 자동으로 재시도하기
메모이제이션
진행 중인 함수 호출들의 단기 메모이제이션
프로미스 이벤트의 스트리밍
프로미스의 집합으로부터 첫 번째 결과 얻기
디퍼드 큐
when2: 개선된 jQuery.when
여러 프로미스를 타임아웃시키기
스스로 운명 결정하기
프로미스 비활성화시키기

부록 B 프로미스/A+ 명세
용어
전제 요건

부록 C ArrayBuffer를 Base64로 변환하기

콜백 지옥에서 벗어나기 위한 도구, 디퍼드와 프로미스(promise)!

자바스크립트 개발을 시작하면 접하게 되는 주요 개념 중 하나가 바로 비동기 처리다. 그리고 자바스크립트 개발자에게 디퍼드의 개념은 그리 낯선 대상이 아니다. 이미 2011년 초에 jQuery 1.5가 공개되면서 디퍼드가 함께 소개되었고, 굳이 디퍼드가 아니더라도 자바스크립트 개발자에게는 비동기 처리가 일상이기 때문이다. 즉, 디퍼드는 단지 비동기 처리 방식이 추상화되고 깔끔해진 API에 지나지 않는다.

하지만 익숙해져 있기 때문에 한 번쯤 낯설게 바라볼 필요가 있다. 적어도 다음 두 가지 경우에는 반드시 그래야 한다.

첫 번째, Ajax 요청을 동기적으로 처리할 때다. 외부 시스템과의 통신을 동기적으로 처리하면 요청이 끝날 때까지 다른 어떤 코드도 수행되지 않는다. 속도를 위해 Ajax를 사용했지만, 정작 속도는 낼 수 없는 상황이 되어 버린다. 그럼에도 이런 비용을 감수하려고 하는 것은 비동기 프로그래밍이 너무 복잡해질 때가 있기 때문이다. 하지만 디퍼드를 제대로 알았더라면 다르게 생각해볼 수도 있었을 것이다.

두 번째, 디퍼드를 알고 있지만 단지 jQuery의 $.ajax, $.animate API와 같이 클라이언트의 입장에서만 사용해본 경우다. 디퍼드를 제공하고 수행하는 입장에서 코드를 작성해본 적이 없다면 디퍼드는 단지 비동기 처리를 깔끔하게 사용하도록 도와주는 jQuery 메소드일 뿐이다. 하지만 디퍼드에는 더 많은 것이 있다. 디퍼드를 좀 더 파헤쳐 본다면 이전에 할 수 없었던 방식으로 코드를 작성할 수 있을 것이다.

디퍼드를 제대로 알기 전에는 이 개념이 과연 책으로 나올만한 것인지 의심할 수 있다. 그러나 이것은 책을 읽기 전의 이야기다. 책을 읽으면서 느낀 디퍼드의 깊이와 재미는 그동안 알고 있던 것과 사뭇 다를 것이다. 이를 여러분도 느껴 보았으면 좋겠다.

작가정보

저자 니콜라스 톨러베이(Nicholas H. Tollervey)는 대학에서 철학을 전공한 뮤지션, 교사, 작가, 프로그래머다. 블로그(http://ntoll.org/)를 운영하고 있다.


저자 : 테리 존슨(Terry Jones)
테리 존슨은 Fluidinfo의 창업자이자 CTO다. 35년 동안 프로그래밍을 해 오고 있으며 최근 7년 간 디퍼드를 열정적으로 다루고 있다. 저자에 대해서는 홈페이지(http://jon.es/terry.html)와 블로그(http://blogs.fluidinfo.com/terry)를 참고하기 바란다.


역자 : 조건희
대한민국의 평범한 개발자로, 다양한 문제를 해결하는 것에 즐거움을 느끼며 현업에 종사하고 있다. RoR로 서비스를 만들기 시작하여, 현재는 Spring을 통한 솔루션 개발에 한창이다. 한 줄 한 줄 작성한 코드가 사용자에게 가치를 준다는 것에서 하고 있는 일에 매력을 느끼며, 개발자의 가치와 생산성을 높이는 일에도 관심이 많다.

이 상품의 총서

Klover리뷰 (0)

Klover리뷰 안내
Klover(Kyobo-lover)는 교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1. 리워드 안내
구매 후 90일 이내에 평점 작성 시 e교환권 100원을 적립해 드립니다.
  • - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • - 리워드는 1,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다.
  • - 리워드는 한 상품에 최초 1회만 제공됩니다.
  • - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
2. 운영 원칙 안내
Klover리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다. 일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

구매 후 리뷰 작성 시, e교환권 100원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여 주는 교보문고의 새로운 서비스 입니다. 교보eBook 앱에서 도서 열람 후 문장 하이라이트 하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 ‘좋아요’ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보없이 삭제될 수 있습니다.
리워드 안내
  • 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
  • e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • 리워드는 1,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다.
  • 리워드는 한 상품에 최초 1회만 제공됩니다.
  • sam 이용권 구매 상품/오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.

구매 후 문장수집 작성 시, e교환권 100원 적립

    교보eBook 첫 방문을 환영 합니다!

    신규가입 혜택 지급이 완료 되었습니다.

    바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
    지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!

    교보e캐시 1,000원
    TOP
    신간 알림 안내
    jQuery Deferreds 디퍼드 제대로 이해하기 웹툰 신간 알림이 신청되었습니다.
    신간 알림 안내
    jQuery Deferreds 디퍼드 제대로 이해하기 웹툰 신간 알림이 취소되었습니다.
    리뷰작성
    • 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
    • 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
    • 콘텐츠 다운로드 또는 바로보기 완료 후 리뷰 작성 시 익일 제공
    감성 태그

    가장 와 닿는 하나의 키워드를 선택해주세요.

    사진 첨부(선택) 0 / 5

    총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.

    신고/차단

    신고 사유를 선택해주세요.
    신고 내용은 이용약관 및 정책에 의해 처리됩니다.

    허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
    있으니 유의하시어 신중하게 신고해주세요.


    이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.

    문장수집 작성

    구매 후 90일 이내 작성 시, e교환권 100원 적립

    eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.

    P.
    jQuery Deferreds 디퍼드 제대로 이해하기
    저자 모두보기
    낭독자 모두보기
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 프리미엄 이용권입니다.
    선물하실 sam이용권을 선택하세요.
    결제완료
    e캐시 원 결제 계속 하시겠습니까?
    교보 e캐시 간편 결제
    sam 열람권 선물하기
    • 보유 권수 / 선물할 권수
      0권 / 1
    • 받는사람 이름
      받는사람 휴대전화
    • 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
    • 열람권은 1인당 1권씩 선물 가능합니다.
    • 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
    • 선물한 열람권의 등록유효기간은 14일 입니다.
      (상대방이 기한내에 등록하지 않을 경우 소멸됩니다.)
    • 무제한 이용권일 경우 열람권 선물이 불가합니다.
    이 상품의 총서 전체보기
    네이버 책을 통해서 교보eBook 첫 구매 시
    교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 네이버 책을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)
    구글북액션을 통해서 교보eBook
    첫 구매 시 교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 구글북액션을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)