장바구니 담기 close

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

현장에서 바로 써먹는 리액트 with 타입스크립트

현장에서 바로 써먹는 리액트 with 타입스크립트

  • 김정헌
  • |
  • 심통
  • |
  • 2023-06-27 출간
  • |
  • 576페이지
  • |
  • 188 X 257mm
  • |
  • ISBN 9791197973079
판매가

37,000원

즉시할인가

33,300

배송비

무료배송

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

수량
+ -
총주문금액
33,300

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

출판사서평

리액트는 하나의 웹 애플리케이션을 컴포넌트라는 작고 고립된 코드를 나누어 개발하고, 이렇게 만든 컴포넌트들을 조합하여 개발할 수 있도록 최적화되어 있다. 그래서 많은 개발자들이 어떻게 하면 좀 더 효율적으로 컴포넌트를 나눌 수 있으며, 좀 더 쉽게 컴포넌트들을 개발할 수 있는지에 대해 고민하기 시작했으며, 그 결과 아토믹 디자인과 컴포넌트 주도 개발이라는 개발 방법론이 탄생하게 되었다. 리액트에서 어떻게 하면 좀 더 효율적으로 컴포넌트를 만들고 관리할 수 있는지에 대해 고민하고 있다면, 이 책이 큰 도움이 될 것이다.

이 책은 리액트에 관한 책으로, 리액트에 사용되는 프로그래밍 언어인 자바스크립트에 관해서는 다루고 있지 않다. 따라서 이 책을 공부하기 위해서는 자바스크립트에 대한 이해가 필요하다. 또한 웹 페이지 제작에 필요한 지식인 HTML과 CSS에 대한 지식도 필요하다.
이 책을 공부하기 전에 자바스크립트의 ES6 문법과 최신 자바스크립트, HTML과 CSS에 관해 먼저 공부하기를 권장한다. 특히, 리액트에서 자주 사용되는 SE6의 화살표 함수, const, let 등은 먼저 공부를 하지 않으면 책에 내용을 이해하기 어려울 수 있다. 자바스크립트, HTML과 CSS에 대해 정확히 모르고 있다면, 인터넷에서 자료를 찾아 공부한 후, 이 책을 공부하길 권장한다.
또한, 이 책은 타입스크립트를 기본적으로 사용하고 있다. 예제 소스에서 타입스크립트를 깊게 사용하고 있지 않기 때문에, 이 책을 공부하기 전에 타입스크립트를 공부할 필요는 없다. 이 책을 통해 리액트와 함께, 타입스크립트를 함께 공부할 수 있으며, 타입스크립트에 입문하기에 적합한 내용을 다루고 있으므로 이 책을 이해하기 위해 타입스크립트를 별도로 공부할 필요는 없다. 실무에서는 좀 더 다양한 방법으로 타입스크립트를 다루고 있으므로, 이 책에 내용만으론 부족할 수 있다. 따라서 이 책으로 리액트와 스토리북을 통한 컴포넌트 주도 개발을 공부한 후, 실무에서 타입스크립트를 사용하면서 깊이 있게 공부하기를 추천한다.

-서문 중에서

목차

1장 리액트란?
1.1 웹의 역사
1) 웹 1.0 - 웹 페이지 시대
2) 웹 2.0 - 웹 애플리케이션 시대
1.2 리액트의 특징
1) JSX
2) 단방향 데이터 바인딩
3) 가상 돔
4) 선언형 프로그래밍
5) 컴포넌트 기반
1.3 요약

2장 리액트 개발 환경
2.1 윈도우 개발 환경 설정
1) 초콜리티 설치
2) 노드 설치
2.3 리액트를 시작하는 방법
1) 스크립트 태그 추가
2) Webpack이나 Babel을 설정하여 개발
3) create-react-app
4) Next.js 프레임워크
2.4 create-react-app
1) create-react-app 설치
2) create-react-app으로 프로젝트 생성 및 실행
3) create-react-app 프로젝트의 폴더 구조
2.5 요약

3장 나의 첫 리액트 프로젝트
3.1 타입스크립트
1) create-react-app과 타입스크립트
2) create-react-app의 타입스크립트 템플릿 사용하기
3.2 스타일링
1) CSS와 Link 태그
2) CSS와 import
3) CSS-in-JS (Emotion)
3.3 절대 경로로 컴포넌트 추가
3.4 Prettier
1) Prettier 설치
2) Prettier 설정
3) Prettier 실행
3.5 ESLint
1) ESLint 설치
2) ESLint 설정
3) ESLint 실행
3.6 요약

4장 카운터 앱 - Props와 State 
4.1 Props와 State
4.2 프로젝트 준비
4.3 개발
1) 〈Container /〉 컴포넌트
2) 〈Title /〉 컴포넌트
3) 〈Label /〉 컴포넌트
4) 〈Button /〉 컴포넌트
5) State
6) Props
4.4 요약

5장 클래스 컴포넌트
5.1 클래스 컴포넌트
5.2 프로젝트 준비
5.3 개발
1) 〈Button /〉 컴포넌트
2) 〈Label /〉 컴포넌트
3) 〈App /〉 컴포넌트
5.4 라이프사이클 함수
1) constructor 함수
2) render 함수
3) getDerivedStateFromProps 함수
4) componentDidMount 함수
5) shouldComponentUpdate 함수
6) getSnapshotBeforeUpdate 함수
7) componentDidUpdate 함수
8) componentWillUnmount 함수
9) componentDidCatch 함수
10) 호출 순서
5.5 요약

6장 할 일 목록 앱 - Context API
6.1 Context API
6.2 프로젝트 준비
6.3 State와 Props로 할 일 목록 앱 개발
1) 〈Title /〉 컴포넌트
2) 〈Button /〉 컴포넌트
3) 〈ToDoItem /〉 컴포넌트
4) 〈ToDoList /〉 컴포넌트
5) useState로 할 일 목록 데이터 관리하기
6) 〈DataView /〉 컴포넌트
7) 〈TextInput /〉 컴포넌트
8) 추가 버튼 컴포넌트
9) 〈ToDoInput /〉 컴포넌트
10) 〈ShowInputButton /〉 컴포넌트
11) 〈InputContainer /〉 컴포넌트
6.4 Context API로 할 일 목록 앱 개발
1) 〈ToDoList /〉 생성
2) 〈App /〉 컴포넌트에 Provider 제공
3) 〈ToDoList /〉 컴포넌트: Consumer를 사용하여 Context 데이터 사용하기
4) 〈ToDoInput /〉 컴포넌트: Consumer를 사용하여 Context 데이터 사용하기
6.5 요약

7장 react-router
7.1 react-router
7.2 프로젝트 준비
7.3 개발
1) react-router
2) 〈DataView /〉 페이지 컴포넌트
3) 〈ToDoInput /〉 페이지 컴포넌트
4) 〈Header /〉 컴포넌트 추가
7.4 요약

8장 Fetch API 
8.1 Fetch API 
8.2 프로젝트 준비
8.3 개발
1) 〈Header /〉 컴포넌트
2) 〈BlogPost /〉 컴포넌트
3) 블로그 글 목록 State
4) useEffect 훅
5) Fetch API로 데이터 가져오기
6) 〈Button /〉 컴포넌트
7) 〈Form /〉 컴포넌트
8) 〈Form /〉 표시 State
9) 블로그 글 State 데이터
10) Fetch API로 블로그 글 등록하기
8.4 요약

9장 컴포넌트 주도 개발
9.1 컴포넌트 주도 개발
9.2 아토믹 디자인
9.3 스토리북
9.4 프로젝트 준비
9.5 스토리북 설치
9.6 스토리북 설정
9.7 스토리북 확인
1) .storybook 폴더
2) .eslintrc.js 파일
3) .npmrc 파일
4) package.json 파일
5) ./src/stories 폴더
6) ./src/stories/Button.tsx 파일
7) ./src/stories/Button.stories.tsx 파일
8) ./src/stories/Introduction.stories.mdx 파일
9.8 스토리북 실행
1) 메뉴
2) 컨트롤 패널
3) 액션 탭
4) 상단 메뉴 바 - 배경색
5) 상단 메뉴 바 - 화면 크기
9.9 요약

10장 컴포넌트 주도 개발 - 카운터 앱 
10.1 카운터 앱
10.2 프로젝트 준비
10.3 개발
1) 〈Title /〉 원자 컴포넌트
2) 〈Button /〉 원자 컴포넌트
3) 〈Count /〉 원자 컴포넌트
4) 〈Counter /〉 유기체 컴포넌트
5) 〈CounterApp /〉 템플릿 컴포넌트
6) 〈Home /〉 페이지 컴포넌트
7) 카운터 앱
10.4 요약

11장 CDD - 할 일 목록 앱 
11.2 프로젝트 준비
11.3 개발
1) 〈AppTitle /〉 원자 컴포넌트
2) 〈PageTitle /〉 원자 컴포넌트
3) 〈Label /〉 원자 컴포넌트
4) 〈Button /〉 원자 컴포넌트
5) 〈Input /〉 원자 컴포넌트
6) 〈Header /〉 유기체 컴포넌트
7) 〈ToDoItem /〉 유기체 컴포넌트
8) 〈InputToDo /〉 유기체 컴포넌트
9) 〈ToDoList /〉 템플릿 컴포넌트
10) 〈ToDoInput /〉 템플릿 컴포넌트
11) 〈ToDoListPage /〉 페이지 컴포넌트
12) ToDoList 컨텍스트
13) 〈ToDoInputPage /〉 페이지 컴포넌트
14) 〈NotFound /〉 페이지 컴포넌트
15) 할 일 목록 앱
11.4 요약

12장 CDD - 블로그 앱 
12.1 블로그 앱
12.2 프로젝트 준비
12.3 개발
1) 〈AppTitle /〉 원자 컴포넌트
2) 〈BlogTitle /〉 원자 컴포넌트
3) 〈BlogBody /〉 원자 컴포넌트
4) 〈Button /〉 원자 컴포넌트
5) 〈DialogTitle /〉 원자 컴포넌트
6) 〈Label /〉 원자 컴포넌트
7) 〈InputText /〉 원자 컴포넌트
8) 〈Input /〉 분자 컴포넌트
9) 〈Header /〉 유기체 컴포넌트
10) 〈BlogItem /〉 유기체 컴포넌트
11) 〈RegisterBlogDialog /〉 유기체 컴포넌트
12) 〈BlogList /〉 템플릿 컴포넌트
13) 〈BlogListPage /〉 페이지 컴포넌트
14) 블로그 앱
12.4 요약

부록
1. Lefthook
1) 프로젝트 준비
2) Lefthook 설치
3) Lefthook 설정
4) Lefthook 실행
5) Lefthook 적용
2. 배포

교환 및 환불안내

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