logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

이펙티브 타입스크립트

이펙티브 타입스크립트

(제2판, 동작 원리의 이해와 구체적인 조언 83가지)

댄 밴더캄 (지은이), 장원호 (옮긴이)
인사이트
35,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
31,500원 -10% 0원
1,750원
29,750원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

이펙티브 타입스크립트
eBook 미리보기

책 정보

· 제목 : 이펙티브 타입스크립트 (제2판, 동작 원리의 이해와 구체적인 조언 83가지)
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 자바
· ISBN : 9788966265046
· 쪽수 : 524쪽
· 출판일 : 2025-12-17

책 소개

정적 타입 기반 언어의 잠재력을 83가지 조언으로 풀어내며 실전 예제로 초·중급 개발자를 고급 사용자로 성장시킨다. 타입스크립트 5 기준으로 타입 시스템 원리, 타입 추론, 타입 설계, 제네릭·타입 수준 프로그래밍, 선언 파일과 JS 전환 전략까지 폭넓게 다룬다.
타입스크립트를 더 효과적으로 사용하기 위한 83가지 방법

타입스크립트는 자바스크립트의 한계를 보완할 잠재력을 지닌 정적 타입 기반의 슈퍼셋 언어입니다. 그러나 타입스크립트 또한 학습 곡선이 존재하며, 효과적으로 활용하기 위해서는 시간과 연습이 필요합니다.
이 책은 《이펙티브 C++》와 《이펙티브 자바》의 형식을 따른 실용서로, 해야 할 것과 하지 말아야 할 것, 그리고 언어에 대해 사고하는 법을 다룬 83가지 조언을 담고 있습니다. 저자 댄 밴더캄은 실제 예제를 통해 각 조언을 어떻게 적용할 수 있는지를 보여 줍니다.
이 책의 목표는 타입스크립트의 기본기를 익힌 초급 및 중급 개발자가 언어를 능숙하게 다루는 고급 사용자로 성장하도록 돕는 것이며, 타입스크립트 5에 맞춰 개정된 2판에서는 타입 수준 프로그래밍과 타입스크립트 레시피를 다루는 두 개 장이 추가되었습니다.

이 책에서 다루는 내용
? 타입스크립트 타입 시스템의 핵심 원리
? 최소한의 타입 주석으로 완전한 안전성을 확보하는 타입 추론
? 더 안전하고 이해하기 쉬운 코드를 위한 타입 설계
? 제네릭 타입과 타입 수준 프로그래밍을 활용해 복잡한 API를 모델링하는 방법
? 의존성과 타입 선언 파일의 동작 방식
? 성공적으로 자바스크립트 코드베이스를 타입스크립트로 전환하는 방법

목차

옮긴이의 글
추천의 글
2판 서문
초판 서문

1장 타입스크립트 소개
아이템 1 타입스크립트와 자바스크립트의 관계 이해하기
아이템 2 타입스크립트 설정 이해하기
아이템 3 코드 생성과 타입이 관계없음을 이해하기
아이템 4 구조적 타이핑에 익숙해지기
아이템 5 any 타입 지양하기

2장 타입스크립트의 타입 시스템
아이템 6 편집기를 사용해 타입 시스템 탐색하기
아이템 7 타입을 값의 집합이라고 생각하기
아이템 8 타입 공간과 값 공간의 심벌 구분하기
아이템 9 타입 단언 대신 타입 선언 사용하기
아이템 10 객체 래퍼 타입 피하기
아이템 11 타입 체크와 잉여 속성 체크 구분해서 사용하기
아이템 12 함수 표현식에 타입 적용하기
아이템 13 타입과 인터페이스의 차이점 이해하기
아이템 14 변경 관련 오류 방지를 위해 readonly 이해하기
아이템 15 타입 연산과 제네릭 사용으로 반복 줄이기
아이템 16 인덱스 시그니처보다 정확한 타입 사용하기
아이템 17 숫자 인덱스 시그니처 지양하기

3장 타입 추론과 제어 흐름 분석
아이템 18 추론 가능한 타입을 사용해 장황한 코드 방지하기
아이템 19 다른 타입에는 다른 변수 사용하기
아이템 20 변수의 타입이 결정되는 원리 이해하기
아이템 21 한꺼번에 객체 생성하기
아이템 22 타입 좁히기
아이템 23 일관성 있는 별칭 사용하기
아이템 24 타입 추론에 문맥이 어떻게 사용되는지 이해하기
아이템 25 타입의 진화 이해하기
아이템 26 함수형 기법과 라이브러리로 타입 흐름 유지하기
아이템 27 비동기 코드에는 콜백 대신 async 함수 사용하기
아이템 28 클래스와 커링 기법으로 새로운 추론 영역 만들기

4장 타입 설계
아이템 29 유효한 상태만 타입으로 표현하기
아이템 30 엄격하게 생성하고, 너그럽게 사용하기
아이템 31 문서에 타입 정보 쓰지 않기
아이템 32 타입 별칭에 null 또는 undefined 포함하지 않기
아이템 33 타입 주변에 null 값 배치하기
아이템 34 유니온의 인터페이스보다는 인터페이스의 유니온 사용하기
아이템 35 string 타입보다 더 구체적인 타입 사용하기
아이템 36 특수값에는 별도의 타입 사용하기
아이템 37 선택적 속성 지양하기
아이템 38 같은 타입의 매개변수를 반복하지 않기
아이템 39 타입 간 차이점을 모델링하기보다 같은 타입으로 통합하기
아이템 40 부정확한 타입보다는 미완성 타입 사용하기
아이템 41 해당 분야의 용어로 타입명 짓기
아이템 42 데이터 형태를 추측해서 타입 만들지 않기

5장 불안전한 any 타입
아이템 43 any 타입은 가능한 한 좁은 스코프에서만 사용하기
아이템 44 any를 구체적으로 변형해서 사용하기
아이템 45 함수 안으로 타입 단언문 감추기
아이템 46 타입을 모르는 경우 any 대신 unknown 사용하기
아이템 47 몽키 패치보다는 안전한 타입 사용하기
아이템 48 무결성 함정 피하기
아이템 49 타입 커버리지를 추적해 타입 안전성 유지하기

6장 제네릭과 타입 레벨 프로그래밍
아이템 50 제네릭이 타입 간 함수라고 생각하기
아이템 51 불필요한 타입 매개변수 지양하기
아이템 52 오버로딩 타입보다는 조건부 타입 사용하기
아이템 53 조건부 타입에 적용되는 유니온 영역을 제어하는 방법 숙지하기
아이템 54 DSL과 문자열의 관계를 모델링하기 위해 템플릿 리터럴 사용하기
아이템 55 타입을 위한 테스트 작성하기
아이템 56 타입이 표시되는 방식 관리하기
아이템 57 제네릭 타입 반복에는 꼬리 재귀 사용하기
아이템 58 복잡한 타입 대신 코드 생성 사용하기

7장 타입스크립트 기교
아이템 59 완전성 체크를 위해 never 타입 사용하기
아이템 60 객체를 순회하는 노하우 이해하기
아이템 61 레코드 타입을 사용해 값 동기화하기
아이템 62 가변 함수 모델링을 위해 나머지 매개변수와 튜플 타입 사용하기
아이템 63 배타적 OR를 모델링하기 위해 선택적 never 속성 사용하기
아이템 64 공식 명칭에는 상표 붙이기

8장 타입 선언과 @types
아이템 65 devDependencies에 typescript와 @types 추가하기
아이템 66 타입 선언과 관련된 세 가지 버전 이해하기
아이템 67 공개 API에 등장하는 모든 타입 익스포트하기
아이템 68 API 주석에 TSDoc 사용하기
아이템 69 콜백 함수에서 this에 대한 타입 제공하기
아이템 70 의존성 분리를 위해 미러 타입 사용하기
아이템 71 타입 개선을 위해 보강 기법 사용하기

9장 코드 작성 및 실행
아이템 72 타입스크립트 기능보다 ECMAScript 기능 사용하기
아이템 73 소스맵을 사용해 타입스크립트 디버깅하기
아이템 74 런타임에 타입 정보 재구성하기
아이템 75 DOM 계층 구조 이해하기
아이템 76 환경에 정확히 맞는 모델 만들기
아이템 77 타입 체크와 단위 테스트의 관계 이해하기
아이템 78 컴파일러 성능 살펴보기

10장 모던화와 마이그레이션
아이템 79 모던 자바스크립트로 작성하기
아이템 80 타입스크립트 도입 전에 @ts-check와 JSDoc으로 시험해 보기
아이템 81 allowJs로 타입스크립트와 자바스크립트 같이 사용하기
아이템 82 의존성 관계에 따라 모듈 단위로 전환하기
아이템 83 마이그레이션의 완성을 위해 noImplicitAny 설정하기

부록 초판과 2판의 아이템 대응표

저자소개

댄 밴더캄 (지은이)    정보 더보기
독립 소프트웨어 개발자로, 사이드워크 랩스에서 수석 소프트웨어 엔지니어로 근무했으며, 구글에서는 시니어 스태프 소프트웨어 엔지니어로 일했다. 마운트 시나이 아이칸 의과대학에서 오픈 소스 유전체 시각화 작업을 했으며, 구글 검색에서 수십억 명이 사용하는 기능들(예: 'sunset nyc'나 'population of france' 검색 결과)을 개발한 이력도 있다. 오픈 소스 프로젝트에도 오랫동안 참여해 왔다. 프로그래밍을 하지 않을 때는 근처 샤원건크 리지(Shawangunk Ridge)에서 암벽등반을 하거나 캐츠킬 산맥(Catskill Mountains)에서 하이킹을 즐기며, 세계 곳곳에서 조류를 관찰한다. 텍사스 휴스턴의 라이스 대학교에서 컴퓨터 과학 학사 학위를 취득했다. effectivetypescript.com과 danvk.org에 글을 쓰고 있으며, 현재는 뉴욕주 월킬에 거주 중이다.
펼치기
장원호 (옮긴이)    정보 더보기
실용적인 개발을 좋아하는 공학자다. 다양한 분야에 관심이 많으며, 주로 프론트엔드, 백엔드, 데브옵스 분야에서 활동하고 있다. 또한 웹게임, 피지컬 컴퓨팅, IoT 분야에서 개인 프로젝트를 진행해 왔다. 특히 2000년대 중반, 다중접속 인디 웹게임을 10년간 기획·개발·운영한 재미있는 경력이 있다. 한양대학교 전자전기컴퓨터공학부 학사와 카이스트 전산학과 석사 과정을 밟았다.
펼치기

책속에서

“그동안 타입스크립트가 발전하고 새로운 기능이 추가되었지만, 그 본질은 초판에서 다루는 내용에서 크게 벗어나지 않습니다. 책의 각 아이템이 ‘효율적으로’ 설명되기 위해서는 단순히 기능 동작을 이해하는 것 이상을 필요로 했습니다. 어떠한 패턴이 잘 동작하고 어떠한 것들이 무의미한지 시간과 공을 들여 익히고 사용해 보는 경험이 필요했습니다. 조건부 타입은 2019년에 도입되었기 때문에 초판에는 많은 내용을 싣지 못했습니다만, 이번 2판에서는 더욱 많은 내용을 다룰 수 있었습니다. 다양한 발전 가능성을 보여 준 템플릿 리터럴 타입은 지난 5년간 타입스크립트에 도입된 기능 중 가장 큰 기능이며, 아이템 54에서 다룹니다. 그리고 초판에서 제네릭과 타입 레벨 프로그래밍은 가볍게 언급하고 넘어갔지만, 이제는 6장에서 제대로 다루게 되었습니다.”

- ‘지은이의 글’ 중에서


추천도서

이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책