간편결제, 신용카드 청구할인
카카오페이 3,000원
(카카오페이 결제 시 최대할인 3천원 / 5만원 이상 결제, 기간 중 1회)
PAYCO(페이코) 최대 5,000원 할인
(페이코 신규 회원 및 90일 휴면 회원 한정)
북피니언 롯데카드 30% (12,600원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (14,400원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (16,200원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (16,740원)
(최대할인 3만원 / 3만원 이상 결제)
Close

Immutable.js 마스터 : 변하지 않는 데이터를 활용한 자바스크립트 개발

원제 : Mastering Immutable.js: Better JavaScript development using immutable data
소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 84
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

20,000원

  • 18,000 (10%할인)

    1,000P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 출고완료 후 14일 이내 마이페이지에서 적립받기한 경우만 적립됩니다.
  • 추가혜택
    배송정보
    •  당일배송을 원하실 경우 주문시 당일배송을 선택해주세요.
    • 서울시 강남구 삼성로 512변경
    • 배송지연보상 안내
    • 무료배송
    주문수량
    감소 증가
    • 이벤트/기획전

    • 연관도서(6)

    • 사은품(3)

    책소개

    유일하게 Immutable.js를 제대로 다루고 있는 책으로 구성이 좋고 설명도 매우 친절하다. 많은 개발서가 독자의 눈높이를 맞추려고 시도하지만 실패하는 경우가 많은데 이 책은 기존 자바스크립트 개발자가 Immutable.js를 활용하는 데 필요한 모든 지식을 단계적으로 쉽게 설명하고 있다.

    ★ 이 책의 대상 독자 ★
    불변성 개념을 활용해 자바스크립트 코드의 신뢰성과 성능을 향상시키고자 하는 사람을 대상으로 하며 기본적인 자바스크립트 지식은 갖추고 있다고 가정한다. 최소한 배열이나 오브젝트를 만들고 조작할 수는 있어야 하며 함수를 생성하고 호출할 수 있어야 한다.

    ★ 이 책에서 다루는 내용 ★
    ■ Immutable.js를 사용해 자바스크립트 코드의 신뢰도를 높이는 방법
    ■ 불변 데이터를 생성 방법과 퍼시스턴트 체인지 사용 방법
    ■ 컬렉션 합성과 필터링 방법 그리고 아이템 탐색 방법
    ■ 시퀀스와 사이드이펙트를 다루는 방법
    ■ 컬렉션, 맵, 세트의 정렬 방법
    ■ 프로세싱 체인을 피하기 위한 기법
    ■ 리스트, 세트, 맵 간의 비교와 이동
    ■ 불변 패턴과 불변 아키텍처 사용

    출판사 서평

    ★ 이 책의 구성 ★
    1장, '왜 Immutable.js인가?'에서는 왜 Immutable.js를 사용하고자 하는지 설명한다.
    2장, '불변 데이터 생성'에서는 불변 컬렉션 생성의 기초를 설명한다.
    3장, '퍼시스턴트 체인지'에서는 기존 데이터를 변경하여 새 데이터를 만드는 방법을 다룬다.
    4장, '컬렉션 필터링과 아이템 탐색'에서는 필요한 데이터를 찾는 방법을 설명한다.
    5장, '시퀀스와 사이드이펙트 컬렉션'에서는 데이터를 사용하기 위해 컬렉션을 순회하는 방법을 설명한다.
    6장, '컬렉션 정렬'에서는 제대로 된 순서를 얻는 방법을 다룬다.
    7장, '매핑과 축소'에서는 컬렉션 데이터 변환의 기초를 설명한다.
    8장, '지핑과 플래트닝'에서는 이터레이션 및 컬렉션 구조의 단순화를 설명한다.
    9장, '퍼시스턴트 체인지 감지'에서는 퍼시스턴트 체인지 메서드가 실제로 데이터를 변경했는지 판단하는 방법을 설명한다.
    10장, '세트 사용'에서는 고유한 컬렉션 값의 생성 방법을 설명한다.
    11장, '컬렉션 비교'에서는 두 컬렉션 간의 관계를 파악하는 방법을 설명한다.
    12장, '컬렉션 결합'에서는 컬렉션을 합쳐 새 컬렉션을 만드는 방법을 설명한다.
    13장, '선언적 의사 결정'에서는 선언적 코드 작성을 돕기 위해 불변 컬렉션을 사용하는 방법을 설명한다.
    14장, '유저 인터페이스'에서는 사이드이펙트, 불변 컬렉션을 사용한 렌더링 UI 컴포넌트를 설명한다.
    15장, 'Node.js에서의 사이드이펙트'에서는 IO 스트림을 사용해 컬렉션 데이터를 읽고 쓰는 방법을 설명한다.
    16장, '불변 아키텍처 재사용'에서는 패턴의 형태로 만드는 방법을 설명한다.

    ★ 지은이의 말 ★
    Immutable.js는 대규모 자바스크립트 프로젝트의 견고함과 신뢰도를 높여주는 라이브러리이다. 이 책에서 다루고 있는 Immutable.js 프레임워크의 전반적인 내용과 일반적인 자바스크립트 적용 사례를 통해 실전 경험을 얻을 수 있고, 이를 통해 진행 중인 자바스크립트 프로젝트에 Immutable.js를 적용할 수 있다.
    불변성을 사용한 강력하고 견고한 자바스크립트 애플리케이션을 만드는 핵심은 애플리케이션 전반에 걸친 데이터 흐름 제어와 이런 흐름의 사이드이펙트를 어떻게 관리하느냐에 달려 있다. 대규모 시스템에서 변경돼서는 안 되는 데이터가 변경됐을 때 발생한 문제의 원인을 찾아내는 것은 쉬운 일이 아니다. 불변 데이터를 사용하면 문제 발생 원인을 좀 더 쉽게 추적할 수 있다. 이 책에서는 실전에서 활용할 수 있는 접근 방법을 제시하고 Immutable.js 프레임워크의 다양한 측면을 보여줌으로써 자신감 있게 자바스크립트 프로젝트를 구축할 수 있는 방법을 제시했다.

    ★ 옮긴이의 말 ★
    이 책은 아마도 현재 국내에 출간된 유일한 Immutable.js 전문 서적일 것입니다. 리액트(React, React.js 또는 ReactJS)는 자바스크립트 라이브러리의 하나로써 사용자 인터페이스를 만들기 위해 사용되는데, Immutable을 적극적으로 활용하기에 적합한 환경이기 때문에 리액트에 관심이 있는 분들은 Immutable이라는 말을 분명 들어보셨을 것입니다. 리액트를 다루는 책에서 아마도 한 챕터 정도를 할애해 Immutable을 다루기는 했을 테지만, 이 책처럼 전체에 걸쳐 Immutable.js를 다룬 책은 없었습니다. 프로그래밍 방법론에는 구조적 프로그래밍, 객체지향 프로그래밍, 함수형 프로그래밍 등 다양한 개념이 존재하는데, 개발자들 사이에서 지속적인 관심을 끌고 있는 함수형 프로그래밍에서 매우 중요시 하는 개념이 불변성이며, 자바스크립트에서 이런 불변성을 지원해주는 라이브러리가 바로 Immutable.js입니다. 참고로 함수형 프로그래밍은 자료 처리를 수학적 함수의 계산으로 취급하고 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임입니다. 불변성이 멋진 이유는 잘못된 시점에 의도와 무관하게 값을 변경하면서 부작용이 발생하는 걸 원천적으로 막아주기 때문입니다. 이는 애플리케이션의 안정성을 크게 향상시켜 줄 뿐만 아니라 디버깅에 들어가는 노력도 크게 줄여줄 수 있습니다. 런타임이 아닌 컴파일 타임에 불변성을 보장해주기 때문에 이런 원칙을 지키지 않으면 심지어 컴파일조차 되지 않습니다. Immutable의 도움을 받지 않더라도 불변성의 원칙을 따르면서 코드를 개발하는 것이 불가능한 것은 아니지만 코드가 매우 복잡해지기 때문에 이럴 때 Immutable의 도움을 받으면 불변성 원칙을 따르는 일이 한결 쉬워집니다. 자바스크립트는 애초부터 불변성을 고려한 언어가 아니므로 불변성이 크게 중요하지 않은 부분은 기존 방식으로 작성할 수도 있겠지만 불변성을 꼭 지켜야 하는 곳에서는 Immutable.js를 적극 활용해 코드를 작성한다면 한 단계 더 높은 수준의 자바스크립트 개발자로 발전할 수 있을 것입니다. 이 책은 Immutable.js를 제대로 사용해보고자 하는 자바스크립트 개발자에게 꼭 필요한 개념을 모두 설명하고 있는 거의 유일한 책입니다.

    목차

    1장. 왜 Immutable.js인가?
    __뮤테이션은 파괴적이다
    ____오래된 데이터 삭제
    ____심각한 버그 발생
    ____퍼시스턴트 체인지
    __Immutable.js 접근법
    ____컬렉션 API
    ____새 데이터를 반환하는 컬렉션 메서드
    ____메서드 콜 연결
    __단방향 데이터 흐름
    ____다른 방향의 존재
    ____구독 만료
    ____생성만 되는 데이터
    ____수행이 어려운 묵시적 사이드이펙트
    __Immutable.js와 유사한 라이브러리
    ____무엇을 비교할 것인가?
    ____Lodash 추천
    __요약

    2장. 불변 데이터 생성
    __Immutable.js 생성자
    ____Immutable.js 데이터 타입
    ____JavaScript 컬렉션 전달
    ____Immutable.js 컬렉션 전달
    __of() 메서드의 사용
    ____Lists의 of값
    ____Maps의 of값
    ____Sets의 of값
    ____Sequences의 of값
    __fromJS() 함수를 사용한 데이터 구문분석
    ____JavaScript 배열 구문분석
    ____JavaScript 오브젝트 구문분석
    ____복잡한 구조 구문분석
    __요약

    3장. 퍼시스턴트 체인지
    __컬렉션에 값 추가
    ____리스트에 값 추가
    ____맵에 키-값 쌍 추가
    ____값 추가 메서드 연결
    __컬렉션값 변경
    ____리스트값 변경
    ____맵값 변경
    ____컬렉션 뮤테이션 메서드 연결
    __컬렉션에서 값 제거
    ____리스트에서 값 제거
    ____맵에서 값 제거
    ____컬렉션 제거 메서드 연결
    __컬렉션 비우기
    ____새 인스턴스로 컬렉션 교체
    ____clear() 메서드 사용
    __변화 추적
    __요약

    4장. 컬렉션 필터링과 아이템 탐색
    __간단한 비교를 사용한 필터링
    ____정확한 일치
    ____크기 비교 연산
    ____부정 필터링
    __키를 사용한 맵 필터링
    ____문자열 키 필터링
    ____팬시 키 필터링
    __컬렉션값 찾기
    ____값 존재 검사
    ____find()를 사용해서 값 얻기
    __딥 일치를 사용한 필터링
    ____is() 함수와 equals() 메서드 사용
    ____맵의 리스트 탐색
    __부분 비교
    ____맵의 형태
    ____서브셋과 슈퍼셋
    __탐색 방향 변경
    ____정렬된 컬렉션 탐색
    ____findLast()와 reduceRight() 사용
    __요약

    5장. 시퀀스와 사이드이펙트
    __느긋한 평가를 써야 하는 이유
    ____큰 컬렉션은 비싸다
    ____불필요한 작업 제거
    ____연결된 연산은 이해하기 쉽다
    __시퀀스 생성과 이터레이션
    ____기본 시퀀스 생성
    ____컬렉션을 시퀀스로 변환
    ____for...of 반복문을 사용한 순회
    ____forEach()를 사용한 순회
    __지연 필터링
    ____기본 지연 필터링
    ____다중 필터 레벨
    __결과 제한과 작업 축소
    ____take()를 사용한 결과 제한
    ____slice()를 사용한 페이지 처리
    __요약

    6장. 컬렉션 정렬
    __정렬과 순서 뒤집기
    ____sort() 메서드
    ____reverse() 메서드
    __맵의 리스트 정렬
    ____sortBy() 메서드
    ____다중 키 사용 정렬
    __오더드 맵
    ____순서 보장
    ____삽입 순서는 정렬 순서와 다름
    ____set()를 사용한 순서 설정
    __맵 정렬
    ____오더드 맵 생성
    ____키를 사용한 맵 정렬
    __정렬 순서 유지
    ____삽입 인덱스 찾기
    ____정말 필요한가?
    __요약

    7장. 매핑과 축소
    __맵의 리스트 매핑
    ____값 뽑아내기
    ____새로운 값 계산
    __맵의 새 리스트에 매핑
    ____새로운 키 생성
    ____키 필터링
    __컬렉션 축소
    ____필터링으로 충분하지 않은 상황
    ____최솟값 및 최댓값 생성
    ____값 누적
    __지연 매핑
    ____다중 map() 호출
    ____매핑 전 필터링
    ____궁극적인 지연 패턴
    __요약

    8장. 지핑과 플래트닝
    __컬렉션 지핑
    ____과도한 순회 제거
    ____간단한 값의 목록 지핑
    ____맵의 리스트 지핑
    ____지연 매핑
    __컬렉션 플래트닝
    ____재귀 구조 피하기
    ____중첩 리스트 딥 플래트닝
    ____얕은 플래트닝 리스트
    ____중첩 맵 평탄화
    __요약

    9장. 퍼시스턴트 체인지 감지
    __컬렉션 동등성
    ____엄격한 비교와 뮤터티브 메서드
    __엄격한 비교 vs 깊은 비교
    ____트랜스포메이션과 뮤테이션 비교
    ____트랜스포메이션은 항상 새 컬렉션을 반환함
    ____트랜스포메이션 전 변화 감지
    ____사이드이펙트 캐싱
    __요약

    10장. 세트 사용
    __세트는 리스트가 아님
    ____get() 메서드 사용 금지
    ____지정된 순회 순서 없음
    ____키만 가진 맵
    __중복 제거
    ____세트로 변환
    ____세트 변환 후 다시 리스트로 복원
    ____지연 중복 제거
    __오더드 세트
    ____세트 정렬
    ____세트 순회
    __세트 유지
    ____고윳값 추가
    ____중복값 추가
    __요약

    11장. 컬렉션 비교
    __세트 인터섹션
    ____인터섹션 찾기
    ____오더드 인터섹션
    __리스트 인터섹션
    ____리스트 인터섹션 줄이기
    ____리스트 인터섹션 필터링
    __컬렉션 디퍼런스
    ____세트 디퍼런스
    ____리스트 디퍼런스
    __맵 비교
    ____맵 인터섹션
    ____맵 디퍼런스
    __서브셋과 슈퍼셋
    ____리스트 서브셋
    ____리스트 슈퍼셋
    __요약

    12장. 컬렉션 결합
    __맵 병합
    ____키를 사용한 맵 병합
    ____복잡한 키를 가진 맵 병합
    __리스트 병합
    ____간단한 값 병합
    ____맵의 리스트 병합
    ____리스트의 리스트 병합
    __리스트와 시퀀스 연결
    ____간단한 값 연결
    ____지연 시퀀스 연결
    __덧붙이기와 끼워넣기
    ____지연값 덧붙이기
    ____지연값 끼워넣기
    __요약

    13장. 선언적 의사 결정
    __매핑 동작
    ____키는 논리적 경로, 값은 행동
    ____함수에서 행동 맵 래핑
    __파라미터와 기본 동작
    ____기본 동작 제공
    ____매핑 동작 파라미터화
    __행동 작성
    ____일반적인 상위 행동 함수
    ____논리적 and/or 조건
    ____복잡한 행동 조합
    __요약

    14장. 유저 인터페이스 사이드이펙트
    __간단한 애플리케이션
    ____애플리케이션 데이터
    ____필터 컨트롤
    ____에피소드 결과
    __DOM 사이드이펙트
    ____HTML 마크업
    ____에피소드 필터링
    ____이벤트 처리
    ____렌더링 요소
    __React 사이드이펙트
    ____애플리케이션 상태
    ____이벤트 처리와 상태 변경
    ____에피소드와 엘리먼트 매핑
    __요약

    15장. Node.js에서의 사이드이펙트
    __컬렉션으로 데이터 읽기
    ____CSV 데이터를 읽고 구문분석
    ____많은 양의 데이터 읽기
    __컬렉션 데이터 쓰기
    ____컬렉션 순회하며 라인 쓰기
    ____비동기 데이터와 시퀀스
    ____지연 시퀀스와 스트림 연결
    __요약

    16장. 불변 아키텍처
    __재사용 가능한 애플리케이션 상태 업데이터
    ____초기 상태
    ____사이드이펙트
    ____상태 갱신 및 사이드이펙트 실행
    __초기 애플리케이션 상태
    ____결과 상태
    __새 에피소드 상태 생성
    __이벤트와 상태 업데이터
    ____검색 쿼리 업데이트
    ____체크박스와 슬라이더 상태 업데이트
    ____새 에피소드 데이터 업데이트
    ____새 에피소드 생성
    __사이드이펙트 실행
    ____에피소드 결과 출력
    ____결과 수량 표시
    ____새 에피소드 양식 초기화
    __요약

    저자소개

    아담 보두치(Adam Boduch) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 5종
    판매수 62권

    거의 10년 동안 대규모 자바스크립트 개발에 참여해 왔다. 프론트엔드로 이동하기 전에 파이썬과 리눅스를 사용해 몇 가지 대규모 클라우드 컴퓨팅 제품을 개발했다. 복잡함을 잘 이해해서 실제 소프트웨어 시스템과 그 시스템이 취한 규모 확장 문제에 대해 현장 경험이 있다. 아담은 팩트출판사의 [React and React Native](2017) 및 [Mastering Immutable.js](2017)를 비롯한 여러 자바스크립트 책의 저자이기도 하다. 혁신적인 사용자 경험과 높은 성능에 대한 열정이 대단하다.

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    인프라웨어에서 웹 브라우저 엔진 개발에 참여했으며 현재는 게임개발사 셀바스에서 신작 개발에 전념하고 있다. 형식에 얽매이기보다는 자유로움 속에서 효율을 찾는 과정에 관심이 많다. 대학시절부터 다수의 전시회 출품과 공모전 입상 경력이 있으며, SKT T스토어 제1회 공모전 스마트폰 게임 부문에서 입상을 하기도 했고, 개인 자격으로 애플 앱스토어에 10개 이상의 앱을 등록해 미국 앱스토어에서 카테고리 1위에 오르는 등 다양한 실험을 하기도 했다. 국내 최초의 유니티 관련 서적인 [유니티 게임 엔진 한글 메뉴얼](2010)을 번역했으며, 에이콘출판사에서 출

    펼쳐보기

    리뷰

    0.0 (총 0건)

    기대평

    작성시 유의사항

    평점
    0/200자
    등록하기

    기대평

    0.0

    교환/환불

    교환/환불 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

    교환/환불 가능 기간

    고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

    교환/환불 비용

    고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

    교환/환불 불가사유

    반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
    배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

    소비자 피해보상

    소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
    교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

    기타

    도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

    배송안내

    • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

    • 배송비

    도서(중고도서 포함) 구매

    2,000원 (1만원이상 구매 시 무료배송)

    음반/DVD/잡지/만화 구매

    2,000원 (2만원이상 구매 시 무료배송)

    도서와 음반/DVD/잡지/만화/
    중고직배송상품을 함께 구매

    2,000원 (1만원이상 구매 시 무료배송)

    업체직접배송상품 구매

    업체별 상이한 배송비 적용