1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

풀스택 리액트 타입스크립트 노드(웹 프로페셔널)
저자 : 데이비즈최 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 양정열

2022.11.30 ㅣ 684p ㅣ ISBN-13 : 9791161756943

정가40,000
판매가38,000(5% 할인)
적립금 1,600원 (4%)
배송일정 내일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 인터넷 > 웹프로그래밍(웹디자...
리액트 SPA 기반의 애플리케이션을 통해 프론트엔드 구현에서부터 백엔드 구현까지 풀스택 개발 과정을 자세히 살펴볼 수 있다. 개발 과정과 상용 환경에서 발생할 수 있는 문제를 해결하기 위한 적절한 팁을 제공한다. 상용 클라우드 환경에서 애플리케이션을 배포하고 설정하는 방법도 다룬다. 저자의 오랜 실무 경험과 노하우를 통해 플랫폼과 도구들을 경험하고 이해할 수 있으며, 더 나아가 자신의 아이디어를 구체화할 수 있는 방법을 찾을 수 있을 것이다.
펼쳐보기

[목 차]

1장. 타입스크립트 이해하기
__기술적 요구 사항
__타입스크립트란 무엇인가?
__왜 타입스크립트가 필요한가?
____동적 타입과 정적 타입
____객체지향 프로그래밍
__요약

2장. 타입스크립트 살펴보기
__기술적 요구 사항
__타입은 무엇인가?
____타입은 어떻게 동작하는가?
__타입스크립트의 타입 살펴보기
____any 타입
____unknown 타입
____인터섹션 타입과 유니온 타입
____리터럴 타입
____타입 별칭
____함수 반환 타입
____함수 타입
____never 타입
__클래스와 인터페이스 이해하기
____클래스
____인터페이스
__상속 이해하기
____추상 클래스
____인터페이스
__제네릭 이해하기
__최신 기능과 컴파일러 설정
____선택적 연결
____널 병합
____타입스크립트 설정
__요약

3장. ES6+로 앱 만들기
__기술적 요구 사항
__ES6 변수 타입과 자바스크립트 범위
__화살표 함수
__this 컨텍스트 변경하기
____스프레드, 구조 분해, 레스트
____스프레드와 Object.assign, Array.concat
____구조 분해
____레스트
____새로운 배열 함수
____새로운 컬렉션 타입
____async await
__요약

4장. SPA의 개념과 리액트에서 사용하는 방법
__기술적 요구 사항
__전통적인 웹사이트 개발 방법 이해하기
__SPA의 이점과 특성 이해하기
__리액트 SPA 방식 이해하기
__리액트 애플리케이션의 여러 가지 속성
__요약

5장. 훅을 사용한 리액트 개발
__기술적 요구 사항
__클래스 방식 컴포넌트의 한계와 문제점 이해하기
____상태
____라이프 사이클 메서드
__리액트 훅과 장점 이해하기
__클래스 방식과 훅 방식의 유사점과 차이점
____코드 재사용
____단순성
__요약

6장. create-react-app을 사용한 프로젝트 설정과 Jest 활용 테스트
__기술적 요구 사항
__리액트 개발 방법과 빌드 시스템 이해하기
____프로젝트 도구
____트랜스파일
____코드 저장소
__리액트 클라이언트 측 테스트 이해하기
__모킹
____jest.fn 모킹
____컴포넌트 모킹
__리액트 개발에 사용하는 일반적인 도구와 사용법
____VS Code
____프리티어
____크롬 디버거
____그 밖의 IDE
__요약

7장. 리덕스와 리액트 라우터
__기술적 요구 사항
__리덕스 상태
____리듀서와 액션
____리액트 컨텍스트
__리액트 라우터
__요약

8장. Node.js와 Express를 사용한 서버 측 개발
__기술적 요구 사항
__노드 동작 방식 이해하기
____이벤트 루프
__노드의 기능 학습하기
____노드 설치하기
____간단한 노드 서버 만들기
____Request와 Response
____라우팅
____디버깅
__Express로 노드 개발을 개선하는 방법 이해하기
__Express 기능 학습하기
__Express로 웹 API 만들기
__요약

9장. GraphQL
__기술적 요구 사항
__GraphQL 이해하기
__GraphQL 스키마 이해하기
__typedef와 resolver 이해하기
__쿼리와 뮤테이션, 구독 이해하기
__요약

10장. 타입스크립트와 GraphQL 의존성으로 Express 프로젝트 구성하기
__기술적 요구 사항
__타입스크립트 기반 Express 프로젝트 만들기
__프로젝트에 GraphQL과 의존성 추가하기
__보조 패키지 살펴보기
__요약

11장. 온라인 포럼 애플리케이션
__포럼 애플리케이션 분석
__포럼 인증 분석
__스레드 관리 분석
__스레드 포인트 시스템 분석
__요약

12장. 온라인 포럼 애플리케이션 리액트 클라이언트 만들기
__기술적 요구 사항
__초기 버전의 리액트 애플리케이션 만들기
____CSS Grid
____에러 경계
____데이터 서비스 계층
____내비게이션 메뉴
____인증 컴포넌트
____라우팅과 화면
____홈 화면
____스레드 게시 화면
__요약

13장. Express와 Redis로 세션 상태 구성하기
__기술적 요구 사항
__세션 상태 이해하기
__Redis 이해하기
__Express와 Redis를 사용해 세션 상태 만들기
__요약

14장. TypeORM으로 저장소 계층과 Postgres 구성하기
__기술적 요구 사항
__Postgres 데이터베이스 설정하기
__TypeORM을 사용해 객체 관계 매퍼 이해하기
__TypeORM과 Postgres를 사용해 저장소 계층 만들기
__요약

15장. GraphQL 스키마 추가하기 - 1부
__기술적 요구 사항
__GraphQL 서버 측 typedefs와 리졸버 만들기
____ThreadPoint 시스템
__인증과 GraphQL 리졸버 통합하기
__Apollo GraphQL을 쿼리하기 위한 리액트 클라이언트 측 훅 만들기
____메인 화면
____인증 관련 기능
____UserProfile 화면
__요약

16장. GraphQL 스키마 추가하기 - 2부
__스레드 경로
____포인트 시스템
__요약

17장. AWS에 애플리케이션 배포하기
__기술적 요구 사항
__AWS 클라우드에서 우분투 리눅스 설정하기
__우분투에서 Redis, Postgres, 노드 설정하기
____Redis 설정
____Postgres 설정하기
____노드 설정하기
__NGINX에서 앱을 설정하고 배포하기
____super-forum-server 설정하기
____super-forum-client 설정하기
____트러블 슈팅
__요약

[본 문]

지은이의 말
오픈소스 소프트웨어의 최대 저장소 깃허브의 발표에 따르면 자바스크립트는 여전히 세계적으로 가장 인기 있는 프로그래밍 언어다. 많은 프로젝트가 자바스크립트로 작성된다. 머신러닝이나 암호 화폐와 같은 웹과 관련이 없는 일반적인 프로젝트조차도 자바스크립트를 사용한다.
자바스크립트 프로그래밍 언어는 굉장히 강력하고 기능이 좋은데, 언어의 기능을 확장하는 리액트와 노드를 포함해 이 언어를 더욱 좋게 만들어주는 프레임워크가 존재한다. 또한 타입스크립트는 대규모 자바스크립트 프로젝트를 수행하기 위한 표준으로 자리 잡았다. 타입스크립트가 자바스크립트 코드를 생산적으로 만들고 대규모 애플리케이션에 적합한 언어적인 기능을 제공하는 것이다.
웹 개발은 여러 해 동안 엄청나게 발전했다. 클라이언트 코드란 과거에는 정적인 HTML과 CSS에 약간의 자바스크립트가 포함되는 것을 의미했다. 백엔드는 PHP나 CGI 스크립트와 같은 전혀 다른 언어로 작성됐다. 하지만 이제는 클라이언트에서 서버까지 전체 애플리케이션을 자바스크립트와 자바스크립트 관련 프레임워크만 사용해 작성하는 것이 일반적이다. 이렇게 단일 언어만 사용해 애플리케이션을 작성할 수 있는 능력은 개발 과정에서 엄청난 이점을 제공한다. 더욱이 여러 가지 활용 가능한 강력하고 성숙된 프레임워크는 모든 다른 플랫폼에 비해 자바스크립트 풀스택 프로그래밍이 경쟁력을 가지게 만들어준다.
이 책에서는 풀스택 웹 애플리케이션을 만들기 위해 자바스크립트의 강력함을 사용하는 방법을 배운다. 강력한 언어 상위 열 번째 안에 드는 언어인 타입스크립트를 사용해 자바스크립트의 강력함을 강화한다. 그리고 리액트와 리덕스, 노드, Express, GraphQL과 같은 프레임워크를 사용해 현실적이고 완벽한 기능을 갖춘 모범 사례가 될 수 있는 웹 애플리케이션을 만든다. 이 애플리케이션을 통해 최신 풀스택 웹 애플리케이션을 만들기 위해 필요한 모든 지식을 얻게 된다. 그리고 애플리케이션이 완성되면 가장 인기 있고 다양한 기능을 가진 CSP(클라우드 서비스 제공자)인 AWS 클라우드 서비스에 애플리케이션을 배포할 수 있을 것이다.

옮긴이의 말
풀스택 개발자나 풀스택 개발이라는 말이 흔한 만큼 이들이 수요가 있을 것이라고 짐작할 수 있다. 인터넷을 검색해보면 풀스택 개발자의 정의도 다양하고 풀스택에 관한 여러 가지 주장도 확인된다. 풀스택 개발에 사용되는 기술을 모두 다 잘 알거나 골고루 잘할 수는 없으므로 풀스택 개발자는 존재하지 않는 허상이라고 주장하는 사람도 있다.
책 제목에서도 알 수 있듯이, 풀스택 개발은 어떤 정의처럼 거창한 내용이 아니라 프론트엔드와 백엔드를 모두 포함한 아주 단순한 웹 개발을 의미한다. 누군가의 주장처럼 프론트엔드와 백엔드를 모두 완벽하게 잘 아는 것은 불가능할지도 모르겠다. 하지만 각 영역에서 어떤 기술이 사용돼야 하는지 알고 기본적인 구현과 동작 방식을 이해해야 하는 것은 풀스택 개발자만의 소양은 아닐 것이다.
이 책에서는 리액트와 타입스크립트, GraphQL 그리고 노드를 사용한 풀스택 웹 개발을 다룬다. 웹 애플리케이션을 만들어보고, 클라우드 서비스에 개발한 웹 애플리케이션을 배포하고 운영하는 방법을 살펴본다. 그 밖에도 개발에 도움이 되는 여러 가지 도구와 정보를 제공한다. 또한 저자의 경험에서 나오는 다양한 오류 해결 방법도 제시한다. 깃허브에 예제와 최신 버전의 소스 코드가 제공된다.
예제를 따라 학습하다 보면 기본적인 내용뿐만 아니라 전반적인 웹 개발을 이해할 수 있게 될 것이다. 더불어 자신의 아이디어를 추가해 확장시키다 보면 보다 더 많은 내용을 습득하고 경험할 수 있을 것이다. 이 책으로 풀스택 개발을 경험하고 더 나은 개발자로 성장할 수 있기를 바란다.
펼쳐보기
◈ 이 책에서 다루는 내용 ◈

◆ 타입스크립트의 핵심 기능과 코드 품질 및 유지 보수 방법
◆ 리액트 훅의 이해와 리액트 앱 구현 방법
◆ 리덕스로 리액트 앱 상태 관리
◆ 타입스크립트와 GraphQL을 사용한 Express 프로젝트 설정 기초
◆ 리액트와 GraphQL으로 온라인 포럼 앱 구현
◆ Redis로 웹 앱 인증 구현
◆ TypeORM으로 Postgres 데이터베이스 데이터 저장 및 검색
◆ AWS 클라우드에 NGINX 구성 및 앱 배포


◈ 이 책의 대상 독자 ◈

여러 가지 최신 웹 기술과 그 기술을 함께 사용하는 방법을 배움으로써 프론트엔드를 넘어 풀스택 웹 개발의 세계로 들어가려는 웹 개발자를 대상으로 한다. 이 책을 시작하려면 먼저 자바스크립트 프로그래밍에 대한 이해가 있어야 한다.


◈ 이 책의 구성 ◈

1장, ‘타입스크립트 이해하기’에서는 타입스크립트가 무엇이며 대규모 애플리케이션 개발에 사용하면 좋은 이유를 살펴본다.
2장, ‘타입스크립트 살펴보기’에서는 타입스크립트를 좀 더 자세히 살펴본다. 정적 타입을 포함한 여러 가지 타입스크립트의 기능을 알아보고 이러한 기능이 자바스크립트보다 개선된 이유를 살핀다.
3장, ‘ES6+로 앱 만들기’는 모든 개발자가 알아야 하는 자바스크립트의 중요 기능을 다룬다. ES6 이상 버전에 추가된 최신 기능을 중심으로 알아본다.
4장, ‘SPA의 개념과 리액트에서 사용하는 방법’에서는 SPA(Single-Page Application) 스타일의 앱에 초점을 둔 웹사이트 개발 방법을 배운다. 그리고 리액트를 소개하고 SPA를 만드는 데 리액트를 사용하는 방법을 알아본다.
5장, ‘훅을 사용한 리액트 개발’에서는 리액트를 더 자세히 관찰한다. 리액트 애플리케이션을 과거의 클래스 스타일로 작성하는 방식의 한계를 알아본다.
6장, ‘create-react-app을 사용한 프로젝트 설정과 Jest 활용 테스트’는 리액트 애플리케이션 개발에 사용되는 최신 기법을 설명한다. 이러한 기법에는 리액트 프로젝트를 만드는 표준인 create-react-app 그리고 Jest나 testing-library를 사용한 클라이언트 측 테스트가 포함된다.
7장, ‘리덕스와 리액트 라우터’에서는 리액트 애플리케이션을 만드는 데 도움이 되는 리덕스와 리액트 라우터를 다룬다.
8장, ‘Node.js와 Express를 사용한 서버 측 개발’은 노드와 Express를 다룬다.
9장, ‘GraphQL’에서는 GraphQL이 무엇인지 살펴보고 데이터 스키마를 사용해 웹 API를 만드는 방법을 알아본다.
10장, ‘타입스크립트와 GraphQL 의존성으로 Express 프로젝트 구성하기’에서는 타입스크립트와 Express, GraphQL 그리고 테스트를 위한 Jest를 사용해 상용 품질의 서버 측 프로젝트를 만드는 방법을 설명한다.
11장, ‘온라인 포럼 애플리케이션’에서는 만들어보게 될 애플리케이션을 설명한다. 애플리케이션의 기능과 앱을 만들어보는 것이 어떻게 웹 개발을 더 자세히 배우는 데 도움이 되는지 살펴본다.
12장, ‘온라인 포럼 애플리케이션 리액트 클라이언트 만들기’에서는 리액트를 사용해 클라이언트측 애플리케이션을 작성하는 방법을 설명한다.
13장, ‘Express와 Redis로 세션 상태 구성하기’에서는 세션 상태가 무엇인지 살펴보고, 가장 강력한 인메모리 데이터 저장소인 Redis를 사용해 서버용 세션을 만드는 방법을 알아본다.
14장, ‘TypeORM으로 저장소 계층과 Postgres 구성하기’에서는 Postgres를 사용해 애플리케이션에서 사용할 데이터베이스를 만드는 방법을 설명한다.
15장, ‘GraphQL 스키마 추가하기 - 1부’에서는 애플리케이션에 GraphQL을 통합하는 방법을 배운다. 스키마를 만들고 쿼리와 뮤테이션을 추가하고 GraphQL 훅을 리액트 프론트엔드에 추가한다.
16장, ‘GraphQL 스키마 추가하기 - 2부’에서는 GraphQL을 클라이언트와 서버에 통합하는 작업을 끝으로 애플리케이션을 완성한다.
17장, ‘AWS에 애플리케이션 배포하기’에서는 완성된 애플리케이션을 AWS 클라우드 서비스에 배포하는 방법을 다룬다.
펼쳐보기
데이비드 최(David Choi)
다양한 프레임워크와 언어로 대규모 애플리케이션을 개발한 10년 이상 경력의 개발자다. 전문 개발 경험의 대부분은 JP모건과 CSFB, 프랭클린 템플턴과 같은 기업의 재무 업무와 관련이 있다. DzHaven을 창업했으며 개발자들이 서로 도울 수 있는 애플리케이션을 만들고 있다.

옮긴이 양정열
국내 Telco SI/SM Software 개발자로 시작해 현재는 프로젝트 매니저와 정보보호 업무를 담당하고 있으며, 자기 계발에 관심이 많다.
펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자
교환/반품 방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
교환/반품 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
교환/반품 비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
교환/반품 불가사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기