장바구니 담기 close

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

우아한 타입스크립트 with 리액트

우아한 타입스크립트 with 리액트

  • 우아한형제들
  • |
  • 한빛미디어
  • |
  • 2023-10-31 출간
  • |
  • 380페이지
  • |
  • 183 X 235 X 21mm / 840g
  • |
  • ISBN 9791169211567
판매가

32,000원

즉시할인가

28,800

배송비

무료배송

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

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

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

출판사서평

★ 우아한형제들의 프론트엔드 개발자는 어떤 기술 스택을 쓸까?
우아한형제들은 자바스크립트와 자체 개발 웹 프레임워크인 WoowahanJS를 웹 프론트엔드 공식 기술 스택으로 사용했었다. 하지만 서비스가 대규모 웹 애플리케이션으로 성장하면서 기존 기술로는 빠르게 변하는 비즈니스 요구를 충족하기 힘들었다. 인터페이스를 파악하기 쉽지 않은 자바스크립트의 한계를 포함한 여러 제한 요소로 인해 기능을 변경하고 유지보수하는 데 어려움을 겪자 우아한형제들은 리액트 기반의 타입스크립트를 웹 프론트엔드 표준 기술 스택으로 도입하게 된다.

★ 왜 타입스크립트일까?
타입스크립트는 자바스크립트와 100% 호환되는 확장 언어로 정적 타입을 지원하여 안정성을 보장해준다. 또한 객체 지향 프로그래밍 환경을 제공하기 때문에 복잡한 애플리케이션을 개발할 때 많은 도움이 된다. 이처럼 다양한 장점 때문에 타입스크립트+리액트를 도입하여 성능과 안정성을 높일 수 있을 뿐 아니라 유지보수도 용이해진다.

★ 우아한형제들의 핸즈온 타입스크립트+리액트 가이드
이 책은 우아한형제들의 배달의민족 개발 사례를 기반으로 타입스크립트와 리액트 사용법을 소개한다. 타입스크립트의 기초 문법과 특성을 익히고 리액트에서의 타입스크립트 활용법을 살펴보면서 어떻게 두 기술을 실무에 적용할 수 있는지를 배울 수 있다.

★ 타입스크립트를 왜 배워야 할까?
타입스크립트를 배워야 하는 이유는 다양하다.
● 오류 예방: 컴파일 단계에서 타입을 검사하기 때문에 실행 단계에서 발생할 수 있는 오류를 사전에 발견하고 수정할 수 있다.
● 코드 가독성과 유지보수성 향상: 타입을 명시적으로 지정함으로써 코드의 의미를 명확하게 표현할 수 있고 코드의 재사용성과 유지보수성을 높일 수 있다.
● 협업 효율성 향상: 타입을 통해 코드의 의도를 명확하게 전달할 수 있기 때문에 협업 효율성을 높일 수 있다.
● 자바스크립트와 호환: 타입스크립트는 자바스크립트와 100% 호환되기 때문에 자바스크립트가 사용되는 어떤 곳이든 타입스크립트를 사용할 수 있다.

이러한 특징으로 인해 많은 개발 조직이 타입스크립트를 사용하고 있다. 개발자로서 더 나은 역량을 갖추기 위한 스킬 중 하나로 여겨지기 때문에 프론트엔드 개발자라면 익혀두는 게 좋다.

★ 이 책의 대상 독자
타입스크립트나 자바스크립트를 접해본 적이 있지만 타입스크립트를 기초부터 깊이 있게 배우고 싶은 프론트엔드 주니어 개발자를 대상으로 한다. 이 책은 타입스크립트의 기본 개념과 특징을 알려주고, 우아한형제들의 사용 예시를 기반으로 실무에서 타입스크립트와 리액트를 어떻게 활용하는지를 설명한다.

★ 이 책을 읽기 전에 알아야 할 지식
HTML, CSS, 자바스크립트 기초를 배운 경험이 있다면 수월하게 이 책을 읽을 수 있다. 또한 리액트에서의 타입스크립트 활용법을 다루고 있기 때문에 리액트 기본 지식도 알고 있어야 한다.

★ 이 책의 구성
1장 들어가며
자바스크립트의 역사와 한계를 간단히 알아보면서 타입스크립트가 등장하게 된 배경을 살펴본다.

2장 타입
정적 타이핑을 하기 위해 타입스크립트가 제공하는 타입과 관련된 내용을 살펴본다. 타입이란 무엇이며 다른 언어에서 타입은 어떻게 동작하는지를 살펴보고, 타입스크립트의 타입을 어떻게 쓸 수 있는지 알아본다.

3장 고급 타입
자바스크립트 자료형에 없는 타입스크립트만의 타입 시스템을 소개한다. 그리고 타입의 개념을 응용하여 좀 더 심화한 타입 검사를 수행하는 데 필요한 지식을 살펴본다.

4장 타입 확장하기·좁히기
타입 확장과 타입 좁히기의 개념을 살펴보며 더욱 확장성 있고 명시적인 코드 작성법에 대해 알아본다.

5장 타입 활용하기
우아한형제들의 타입스크립트 활용 사례를 소개한다. 우아한형제들의 실무 코드 예시를 살펴보면서 정확한 타이핑을 하지 못해 발생하는 문제를 타입스크립트의 다양한 기법과 유틸리티 타입을 활용해 해결해본다.

6장 타입스크립트 컴파일
타입스크립트가 실행되는 전반적인 흐름을 살펴보고, 타입스크립트 컴파일러의 주요 역할과 구조에 대해 알아본다. 그리고 실제로 어떻게 컴파일하는지 확인해본다.

7장 비동기 호출
API를 요청하고 응답받는 행위는 모두 비동기로 이루어진다. 이 장에서는 타입스크립트에서 비동기 요청을 어떻게 처리하고 관리하는지를 다룬다.

8장 JSX에서 TSX로
리액트에서 사용하는 JSX 문법을 타입스크립트에 어떻게 적용하는지 소개한다.

9장 훅
리액트에서 제공하는 몇 가지 훅을 사용하여 상태 또는 사이드 이펙트를 다루는 방법을 소개한다. 또한 상태 로직을 재사용할 수 있게 해주고, 컴포넌트의 복잡성을 낮춰주는 커스텀 훅에 대해 알아본다.

10장 상태 관리
리액트 애플리케이션에서 가장 중요한 역할을 하는 상태에 대해 알아본다. 기본적인 상태의 개념을 익히고 어떻게 효율적으로 상태를 관리할 수 있는지를 살펴본다.

11장 CSS-in-JS
CSS-in-JS는 자바스크립트에서 CSS를 작성하는 방식이다. CSS-in-JS를 적용하면 CSS 스타일을 문서 레벨이 아니라 컴포넌트 레벨로 추상화해주기 때문에 관리가 용이해진다. 11장에서는 CSS-in-JS의 개념과 사용법에 관해 알아본다.

12장 타입스크립트 프로젝트 관리
타입스크립트 프로젝트에서 유용하게 활용할 수 있는 개념과 팁을 소개한다.

13장 타입스크립트와 객체 지향
타입스크립트와 리액트 환경에서 객체 지향을 어떻게 활용하고 더 나은 방향으로 발전시킬 수 있는지 알아본다.

목차

1장 들어가며
1.1 웹 개발의 역사
1.2 웹자바스크립트의 한계

2장 타입
2.1 타입이란
2.2 타입스크립트의 타입 시스템
2.3 원시 타입
2.4 객체 타입

3장 고급 타입
3.1 타입스크립트만의 독자적 타입 시스템
3.2 타입 조합
3.3 제네릭 사용법

4장 타입 확장하기·좁히기
4.1 타입 확장하기
4.2 타입 좁히기 - 타입 가드
4.3 타입 좁히기 - 식별할 수 있는 유니온
4.4 Exhaustiveness Checking으로 정확한 타입 분기 유지하기

5장 타입 활용하기
5.1 조건부 타입
5.2 템플릿 리터럴 타입 활용하기
5.3 커스텀 유틸리티 타입 활용하기
5.4 불변 객체 타입으로 활용하기
5.5 Record 원시 타입 키 개선하기

6장 타입스크립트 컴파일
6.1 자바스크립트의 런타임과 타입스크립트의 컴파일
6.2 타입스크립트 컴파일러의 동작
6.3 타입스크립트 컴파일러의 구조

7장 비동기 호출
7.1 API 요청
7.2 API 상태 관리하기
7.3 API 에러 핸들링
7.4 API 모킹

8장 JSX에서 TSX로
8.1 리액트 컴포넌트의 타입
8.2 타입스크립트로 리액트 컴포넌트 만들기
8.3 정리

9장 훅
9.1 리액트 훅
9.2 커스텀 훅

10장 상태 관리
10.1 상태 관리
10.2 상태 관리 라이브러리

11장 CSS-in-JS
11.1 CSS-in-JS란
11.2 유틸리티 함수를 활용하여 styled-components의 중복 타입 선언 피하기

12장 타입스크립트 프로젝트 관리
12.1 앰비언트 타입 활용하기
12.2 스크립트와 설정 파일 활용하기
12.3 타입스크립트 마이그레이션
12.4 모노레포

13장 타입스크립트와 객체 지향
13.1 타입스크립트의 객체 지향
13.2 우아한형제들의 활용 방식
13.3 캡슐화와 추상화
13.4 정리

교환 및 환불안내

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