HOME > 상세정보

상세정보

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

자료유형
단행본
개인저자
Boduch, Adam 조경빈, 역
서명 / 저자사항
Immutable.js 마스터 : 변하지 않는 데이터를 활용한 자바스크립트 개발 / 아담 보두치 지음 ; 조경빈 옮김
발행사항
서울 :   에이콘,   2019  
형태사항
266 p. ; 24 cm
총서사항
Acorn+Packt technical book 시리즈
원표제
Mastering Immutable.js : better JavaScript development using immutable data
ISBN
9791161753065
일반주기
색인수록  
000 00000cam c2200205 c 4500
001 000046002226
005 20191015170018
007 ta
008 191015s2019 ulk 001c kor
020 ▼a 9791161753065 ▼g 93000
040 ▼a 211009 ▼c 211009 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.133 ▼2 23
085 ▼a 005.133 ▼2 DDCK
090 ▼a 005.133 ▼b J41 2019z10
100 1 ▼a Boduch, Adam
245 1 0 ▼a Immutable.js 마스터 : ▼b 변하지 않는 데이터를 활용한 자바스크립트 개발 / ▼d 아담 보두치 지음 ; ▼e 조경빈 옮김
246 1 9 ▼a Mastering Immutable.js : ▼b better JavaScript development using immutable data
260 ▼a 서울 : ▼b 에이콘, ▼c 2019
300 ▼a 266 p. ; ▼c 24 cm
490 1 0 ▼a Acorn+Packt technical book 시리즈
500 ▼a 색인수록
546 ▼a 영어로 된 원저작을 한국어로 번역
700 1 ▼a 조경빈, ▼e
830 0 ▼a Acorn+Packt technical book 시리즈
900 1 0 ▼a 보두치, 아담, ▼e

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 세종학술정보원/과학기술실/ 청구기호 005.133 J41 2019z10 등록번호 151347371 도서상태 대출가능 반납예정일 예약 서비스 C

컨텐츠정보

책소개

유일하게 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장, '불변 아키텍처 재사용'에서는 패턴의 형태로 만드는 방법을 설명한다.


정보제공 : Aladin

저자소개

아담 보두치(지은이)

거의 10년 동안 대규모 자바스크립트 개발 작업에 참여해왔다. 프론트엔드로 옮기기 전에는 파이썬과 리눅스를 사용하는 여러 가지 대규모 클라우드 컴퓨팅 제품을 연구했다. 복잡성을 잘 알고 있으면서 실제 소프트웨어 시스템과 이들이 제기하는 확장 문제에 대한 실질적인 경험을 갖고 있다. 『리액트 & 리액트 네이티브 통합 교과서』(에이콘, 2019)를 비롯한 여러 자바스크립트 서적을 저술했으며, 혁신적인 사용자 경험과 고성능을 추구하는 데 열정적이다.

조경빈(옮긴이)

중학교 때 처음으로 8비트 컴퓨터를 만지기 시작하면서부터 게임 개발에 흥미를 느끼기 시작했다. 인프라웨어에서 온라인게임과 인터넷 브라우저 엔진 개발에 참여했고 현재 아이엔브이게임즈에서 게임 PD로 모바일 게임을 만들고 있다. SKT T스토어 공모전 게임 부문에 입상했으며, 개인 자격으로 개발한 앱이 미국 내 애플 앱스토어 카테고리 1위에 오르는 등 다양한 실험을 즐기며 살고 있다.

정보제공 : Aladin

목차

목차
지은이 소개 = 5
기술 감수자 소개 = 6
옮긴이 소개 = 7
옮긴이의 말 = 8
들어가며 = 20
1장 왜 Immutable.js인가? = 27
 뮤테이션은 파괴적이다 = 28
  오래된 데이터 삭제 = 28
  심각한 버그 발생 = 29
  퍼시스턴트 체인지 = 30
 Immutable.js 접근법 = 30
  컬렉션 API = 30
  새 데이터를 반환하는 컬렉션 메서드 = 31
  메서드 콜 연결 = 32
 단방향 데이터 흐름 = 32
  다른 방향의 존재 = 33
  구독 만료 = 33
  생성만 되는 데이터 = 34
  수행이 어려운 묵시적 사이드이펙트 = 34
 Immutable.js와 유사한 라이브러리 = 35
  무엇을 비교할 것인가? = 35
  Lodash 추천 = 36
 요약 = 37
2장 불변 데이터 생성 = 39
 Immutable.js 생성자 = 40
  Immutable.js 데이터 타입 = 40
  자바스크립트 컬렉션 전달 = 44
  Immutable.js 컬렉션 전달 = 45
 of() 메서드의 사용 = 46
  Lists의 of값 = 46
  Maps의 of값 = 46
  Sets의 of값 = 47
  Sequences의 of값 = 47
 fromJS() 함수를 사용한 데이터 구문분석 = 47
  자바스크립트 배열 구문분석 = 48
  자바스크립트 오브젝트 구문분석 = 48
  복잡한 구조 구문분석 = 49
 요약 = 50
3장 퍼시스턴트 체인지 = 51
 컬렉션에 값 추가 = 52
  리스트에 값 추가 = 52
  맵에 키-값 쌍 추가 = 52
  값 추가 메서드 연결 = 53
 컬렉션값 변경 = 55
  리스트값 변경 = 55
  맵값 변경 = 57
  컬렉션 뮤테이션 메서드 연결 = 58
 컬렉션에서 값 제거 = 59
  리스트에서 값 제거 = 60
  맵에서 값 제거 = 60
  컬렉션 제거 메서드 연결 = 61
 컬렉션 비우기 = 62
  새 인스턴스로 컬렉션 교체 = 62
  clear() 메서드 사용 = 63
 변화 추적 = 64
 요약 = 70
4장 컬렉션 필터링과 아이템 탐색 = 71
 간단한 비교를 사용한 필터링 = 72
  정확한 일치 = 72
  크기 비교 연산 = 73
  부정 필터링 = 74
 키를 사용한 맵 필터링 = 75
  문자열 키 필터링 = 75
  팬시 키 필터링 = 76
 컬렉션값 찾기 = 77
  값 존재 검사 = 77
  find()를 사용해서 값 얻기 = 79
 딥 일치를 사용한 필터링 = 80
  is() 함수와 equals() 메서드 사용 = 80
  맵의 리스트 탐색 = 82
 부분 비교 = 83
  맵의 형태 = 83
  서브셋과 슈퍼셋 = 84
 탐색 방향 변경 = 85
  정렬된 컬렉션 탐색 = 85
  findLast()와 reduceRight() 사용 = 86
 요약 = 87
5장 시퀀스와 사이드이펙트 = 89
 지연 연산을 써야 하는 이유 = 90
  큰 컬렉션은 비싸다 = 90
  불필요한 작업 제거 = 90
  연결된 연산은 이해하기 쉽다 = 91
 시퀀스 생성과 이터레이션 = 91
  기본 시퀀스 생성 = 91
  컬렉션을 시퀀스로 변환 = 92
  for...of 반복문을 사용한 순회 = 93
  forEach()를 사용한 순회 = 94
 지연 필터링 = 95
  기본 지연 필터링 = 96
  다중 필터 레벨 = 97
 결과 제한과 작업 축소 = 99
  take()를 사용한 결과 제한 = 99
  slice()를 사용한 페이지 처리 = 101
 요약 = 102
6장 컬렉션 정렬 = 103
 정렬과 순서 뒤집기 = 104
  sort() 메서드 = 104
  reverse() 메서드 = 105
 맵의 리스트 정렬 = 106
  sortBy() 메서드 = 106
  다중 키 사용 정렬 = 107
 오더드 맵 = 109
  순서 보장 = 109
  삽입 순서는 정렬 순서와 다름 = 109
  set()를 사용한 순서 설정 = 110
 맵 정렬 = 111
  오더드 맵 생성 = 111
  키를 사용한 맵 정렬 = 112
 정렬 순서 유지 = 113
  삽입 인덱스 찾기 = 113
  정말 필요한가? = 115
 요약 = 115
7장 매핑과 축소 = 117
 맵의 리스트 매핑 = 118
  값 뽑아내기 = 118
  새로운 값 계산 = 119
 맵의 새 리스트에 매핑 = 120
  새로운 키 생성 = 120
  키 필터링 = 121
 컬렉션 축소 = 122
  필터링으로 충분하지 않은 상황 = 122
  최솟값 및 최댓값 생성 = 123
  값 누적 = 125
 지연 매핑 = 126
  다중 map() 호출 = 127
  매핑 전 필터링 = 128
  궁극적인 지연 패턴 = 128
 요약 = 130
8장 지핑과 플래트닝 = 131
 컬렉션 지핑 = 132
  과도한 순회 제거 = 132
  간단한 값의 목록 지핑 = 132
  맵의 리스트 지핑 = 133
  지연 매핑 = 134
 컬렉션 플래트닝 = 136
  재귀 구조 피하기 = 136
  중첩 리스트 딥 플래트닝 = 136
  얕은 플래트닝 리스트 = 138
  중첩 맵 평탄화 = 139
 요약 = 140
9장 퍼시스턴트 체인지 감지 = 141
 컬렉션 동등성 = 142
  엄격한 비교와 뮤터티브 메서드 = 142
 엄격한 비교 vs 깊은 비교 = 144
  트랜스포메이션과 뮤테이션 비교 = 146
  트랜스포메이션은 항상 새 컬렉션을 반환함 = 146
  트랜스포메이션 전 변화 감지 = 148
 사이드이펙트 캐싱 = 151
 요약 = 154
10장 세트 사용 = 157
 세트는 리스트가 아님 = 158
  get() 메서드 사용 금지 = 158
  지정된 순회 순서 없음 = 159
  키만 가진 맵 = 159
 중복 제거 = 160
  세트로 변환 = 160
  세트 변환 후 다시 리스트로 복원 = 160
  지연 중복 제거 = 161
 오더드 세트 = 164
  세트 정렬 = 164
  세트 순회 = 165
 세트 유지 = 166
  고윳값 추가 = 166
  중복값 추가 = 167
 요약 = 168
11장 컬렉션 비교 = 169
 세트 인터섹션 = 170
  인터섹션 찾기 = 170
  오더드 인터섹션 = 171
 리스트 인터섹션 = 171
  리스트 인터섹션 줄이기 = 171
  리스트 인터섹션 필터링 = 173
 컬렉션 디퍼런스 = 175
  세트 디퍼런스 = 175
  리스트 디퍼런스 = 176
 맵 비교 = 178
  맵 인터섹션 = 178
  맵 디퍼런스 = 179
 서브셋과 슈퍼셋 = 180
  리스트 서브셋 = 180
  리스트 슈퍼셋 = 181
 요약 = 182
12장 컬렉션 결합 = 183
 맵 병합 = 184
  키를 사용한 맵 병합 = 184
  복잡한 키를 가진 맵 병합 = 185
 리스트 병합 = 186
  간단한 값 병합 = 187
  맵의 리스트 병합 = 188
  리스트의 리스트 병합 = 189
 리스트와 시퀀스 연결 = 190
  간단한 값 연결 = 191
  지연 시퀀스 연결 = 191
 덧붙이기와 끼워넣기 = 193
  지연값 덧붙이기 = 193
  지연값 끼워넣기 = 194
 요약 = 195
13장 선언적 의사 결정 = 197
 매핑 동작 = 198
  키는 논리적 경로, 값은 행동 = 198
  함수에서 행동 맵 래핑 = 199
 파라미터와 기본 동작 = 200
  기본 동작 제공 = 200
  매핑 동작 파라미터화 = 201
 행동 작성 = 202
  일반적인 상위 행동 함수 = 202
  논리적 and/or 조건 = 204
  복잡한 행동 조합 = 207
 요약 = 208
14장 유저 인터페이스 사이드이펙트 = 209
 간단한 애플리케이션 = 210
  애플리케이션 데이터 = 210
  필터 컨트롤 = 211
  에피소드 결과 = 212
 DOM 사이드이펙트 = 213
  HTML 마크업 = 213
  에피소드 필터링 = 215
  이벤트 처리 = 217
  렌더링 요소 = 219
 React 사이드이펙트 = 220
  애플리케이션 상태 = 220
  이벤트 처리와 상태 변경 = 221
  에피소드와 엘리먼트 매핑 = 223
 요약 = 225
15장 Node.js에서의 사이드이펙트 = 227
 컬렉션으로 데이터 읽기 = 228
  CSV 데이터를 읽고 구문분석 = 228
  많은 양의 데이터 읽기 = 229
 컬렉션 데이터 쓰기 = 232
  컬렉션 순회하며 라인 쓰기 = 233
  비동기 데이터와 시퀀스 = 234
  지연 시퀀스와 스트림 연결 = 236
 요약 = 238
16장 불변 아키텍처 = 241
 재사용 가능한 애플리케이션 상태 업데이터 = 242
  초기 상태 = 242
  사이드이펙트 = 244
  상태 갱신 및 사이드이펙트 실행 = 245
 초기 애플리케이션 상태 = 248
  결과 상태 = 248
 새 에피소드 상태 생성 = 249
 이벤트와 상태 업데이터 = 250
  검색 쿼리 업데이트 = 250
  체크박스와 슬라이더 상태 업데이트 = 251
  새 에피소드 데이터 업데이트 = 252
  새 에피소드 생성 = 253
 사이드이펙트 실행 = 254
  에피소드 결과 출력 = 254
  결과 수량 표시 = 256
  새 에피소드 양식 초기화 = 257
 요약 = 259
찾아보기 = 261

관련분야 신착자료

Ramamurthy, Bina (2021)