리액트 웹앱 제작 총론 [최적화된 고성능 웹앱 UI 개발 가이드]
- 원서명Learning React (ISBN 9780134546315)
- 지은이크루파 친나탐비(Kirupa Chinnathambi)
- 옮긴이이태상
- ISBN : 9791161750118
- 25,000원
- 2017년 07월 17일 펴냄 (절판)
- 페이퍼백 | 256쪽 | 188*235mm
- 시리즈 : 오픈소스 프로그래밍
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
요약
리액트는 엄청난 성공을 거두고 있는 웹 UI 라이브러리다. 리액트는 복잡한 웹앱을 제작할 때 겪는 흔한 문제를 해결할 뿐만 아니라, UI를 더 쉽게 구현할 수 있는 다양한 컴포넌트와 기법을 제공한다. 이 책에서 JSX, 상태 관리, 생명주기 등 리액트의 핵심을 설명하며, 최적화된 워크플로우를 따라 고성능의 웹앱을 빠르게 제작할 수 있게 돕는다.
이 책에서 다루는 내용
■ 첫 리액트 앱 제작
■ UI 요소를 정의하는 컴포넌트 개발
■ 여러 컴포넌트들을 결합한 복합적인 UI 구현
■ 자바스크립트 대신 JSX를 사용한 비주얼 구현
■ 앱의 상태 관리
■ 리액트 방식의 스타일 적용
■ 컴포넌트 생명주기의 이해
■ 라우팅과 뷰를 이용한 싱글 페이지 앱 제작
■ 노드, 바벨, 웹팩 등을 이용한 리액트 워크플로우의 최적화
이 책의 구성
1장. '리액트 소개'에서는 리액트가 하는 일과 그 이유에 대해 개괄적으로 소개한다.
2장. '첫 번째 리액트 앱'에서는 render 메소드에 h1 태그를 정의할 때의 JSX에 대해 알아본다.
3장. '리액트 컴포넌트'에서는 리액트를 리액트답게 만드는 것 중 하나인 컴포넌트를 배운다.
4장. '리액트 스타일링'에서는 리액트가 자바스크립트에 인라인 방식으로 스타일링하는 모습을 볼 수 있으며, 또한 HTML과 비슷한 XML 문법을 사용해 자바스크립트에서 UI를 통째로 선언하는 방법을 JSX를 통해 배운다.
5장. '복잡한 컴포넌트 제작'에서는 UI를 구조적으로 바라보는 방법과 컴포넌트 구현을 위한 식별 방법을 배운다.
6장. '속성 전달'에서는 여러 계층에서 속성 전달을 좀 더 쉽게 할 수 있는 방법을 알아본다.
7장. 'JSX와의 재회'에서는 JSX를 알아야 할 필요가 있는 사항을 깊이 들여다보기 위해 역진 추적(backtracking)과 전진 추적(forwardtracking)도 배운다.
8장. '상태 다루기'에서는 상태에 대한 모든 사항을 살펴보고 상태 보존(stateful) 컴포넌트를 만들어 사용하는 방법과 이것으로 무엇을 할 수 있는지 배운다.
9장. '데이터에서 UI로'에서는 실전에서 보게 될 일반적인 시나리오에서 힘들 수 있는 점을 줄이는 방법을 알아본다.
10장. '이벤트'에서는 이벤트 처리와 관련한 여러 가지 사항을 알아본다. 리액트가 이벤트를 취급하는 방법은 약간 다르며, 그 차이에 세심한 주의를 기울이지 않으면 놀라게 될 일들이 많을 것이다. 간단한 몇 개의 예제로 시작해, 점점 더 이상하고 복잡하고 짜증 나는 상황을 해결해나가는 방법을 배운다.
11장. '컴포넌트 생명주기'에서는 생명주기 메소드와 이를 통해 할 수 있는 일들을 배워본다.
12장. 'DOM 엘리먼트 접근'에서는 DOM 엘리먼트에 직접 접근할 수 있는 ‘쉬운’ 방법을 알아본다.
13장. '리액트 라우터를 이용한 싱글 페이지 앱'에서는 리액트를 이용해 간단한 싱글 페이지 앱(SPA)을 만들어 본다.
14장. 'Todo List 앱 제작'에서는 지금까지 배운 많은 개념과 기법을 총동원해 Todo List 앱을 개발할 것이다.
15장. '리액트 개발 환경 구성'에서는 리액트 앱을 개발하기 위한 툴을 소개하고 노드, 바벨, 웹팩을 사용해본다.
상세이미지
목차
목차
- 1장. 리액트 소개
- 옛날 방식의 멀티 페이지 디자인
- 요즘 방식의 싱글 페이지 앱
- 리액트와의 첫 만남
- UI 상태 자동 관리
- 번개같이 빠른 DOM 조작
- 결합이 용이한 UI를 지원하는 API
- 자바스크립트로 정의하는 비주얼
- MVC 아키텍처에서의 ‘V’
- 정리
- 2장. 첫 번째 리액트 앱
- JSX 다루기
- 리액트 시작하기
- 이름 보여주기
- 여전히 익숙한 기술
- 목적지 변경
- 스타일 입히기!
- 정리
- 3장. 리액트 컴포넌트
- 함수에 대한 빠른 리뷰
- UI를 다루는 방법의 변화
- 리액트 컴포넌트와의 첫 만남
- Hello, World! 컴포넌트 만들기
- 속성 지정
- 자식 다루기
- 정리
- 4장. 리액트 스타일링
- 영어 모음 보여주기
- CSS를 사용한 리액트 콘텐츠의 스타일링
- 생성된 HTML의 이해
- 곧바로 스타일링!
- 리액트 방식의 스타일링
- 스타일 객체 만들기
- 콘텐츠 스타일링
- 접미사 ‘px’의 생략
- 배경색 커스터마이징
- 정리
- 5장. 복잡한 컴포넌트 제작
- 비주얼 요소에서 컴포넌트로
- 주된 비주얼 요소 식별
- 컴포넌트 식별
- 컴포넌트 작성
- Card 컴포넌트
- Square 컴포넌트
- Label 컴포넌트
- 속성 전달
- 컴포넌트 결합성의 비밀
- 정리
- 비주얼 요소에서 컴포넌트로
- 6장. 속성 전달
- 문제점 인식
- 문제점 분석
- 스프레드 연산자
- 속성의 올바른 전달
- 정리
- 7장. JSX와의 재회
- JSX의 실체
- 기억해야 할 JSX의 특징
- 단 하나의 루트 노트만 리턴 가능
- 인라인 CSS 사용 불가
- 예약어와 className
- 주석
- 대소문자 구별
- 어디든 가능한 JSX
- 정리
- 8장. 상태 다루기
- 상태 사용하기
- 시작 지점
- 카운터 켜기
- 초기 상태 값 설정
- 타이머 시작과 상태 설정
- 상태 변경 후 렌더링
- 참고: 전체 코드
- 정리
- 상태 사용하기
- 9장. 데이터에서 UI로
- 예제
- 어디든 가능한 JSX―2탄
- JSX에서의 배열 다루기
- 정리
- 10장. 이벤트
- 이벤트 리스닝하기와 반응하기
- 시작 지점
- 버튼 작동시키기
- 이벤트 속성
- 이벤트 속성 다루기
- 또 다른 이벤트 처리 기법
- 일반적인 DOM 이벤트 리스닝
- 이벤트 핸들러에서 this의 의미
- 리액트는 왜? 왜?!
- 브라우저 호환성
- 성능 향상
- 정리
- 이벤트 리스닝하기와 반응하기
- 11장. 컴포넌트 생명주기
- 생명주기 메소드와의 만남
- 생명주기 메소드의 작동 확인
- 초기 렌더링 단계
- 업데이트 단계
- 언마운트 단계
- 정리
- 생명주기 메소드와의 만남
- 12장. DOM 엘리먼트 접근
- ref와의 첫 만남
- 정리
- 13장. 리액트 라우터를 이용한 싱글 페이지 앱
- 예제
- 앱 구축
- 초기 프레임 보여주기
- Home 뷰 보여주기
- 중간 정리
- 올바르게 Home 뷰 보여주기
- 내비게이션 링크 만들기
- Stuff 뷰와 Contact 뷰 추가
- 액티브 링크
- 정리
- 14장. Todo List 앱 제작
- 시작하기
- UI 제작
- 기능 구현
- 상태 객체 초기화
- 폼 제출 처리
- 상태 채우기
- ‘할 일’ 보여주기
- 마지막 손질하기
- 정리
- 15장. 리액트 개발 환경 구성
- 툴 소개
- 노드
- 바벨
- 웹팩
- 코드 에디터
- 환경 설정 시간!
- 초기 프로젝트 구조 잡기
- 노드의 설치와 초기화
- 의존 라이브러리 설치
- JSX 파일 추가
- JSX로부터 자바스크립트 만들기
- 빌드와 테스트
- 정리
- 툴 소개
- 16장. 책을 마치며