풀스택 리액트, 타입스크립트, 노드 (리액트 18, 훅, GraphQL로 클라우드 기반 웹앱 만들기)

풀스택 리액트, 타입스크립트, 노드 (리액트 18, 훅, GraphQL로 클라우드 기반 웹앱 만들기)

$42.88
Description
리액트 SPA 기반의 애플리케이션을 통해 프론트엔드 구현에서부터 백엔드 구현까지 풀스택 개발 과정을 자세히 살펴볼 수 있다. 개발 과정과 상용 환경에서 발생할 수 있는 문제를 해결하기 위한 적절한 팁을 제공한다. 상용 클라우드 환경에서 애플리케이션을 배포하고 설정하는 방법도 다룬다. 저자의 오랜 실무 경험과 노하우를 통해 플랫폼과 도구들을 경험하고 이해할 수 있으며, 더 나아가 자신의 아이디어를 구체화할 수 있는 방법을 찾을 수 있을 것이다.
저자

데이비드최

DavidChoi
다양한프레임워크와언어로대규모애플리케이션을개발한10년이상경력의개발자다.전문개발경험의대부분은JP모건과CSFB,프랭클린템플턴과같은기업의재무업무와관련이있다.DzHaven을창업했으며개발자들이서로도울수있는애플리케이션을만들고있다.

목차

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


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


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


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


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


6장.create-react-app을사용한프로젝트설정과Jest활용테스트
__기술적요구사항
__리액트개발방법과빌드시스템이해하기
____프로젝트도구
____트랜스파일
____코드저장소
__리액트클라이언트측테스트이해하기
__모킹
____jest.fn모킹
____컴포넌트모킹
__리액트개발에사용하는일반적인도구와사용법
____VSCode
____프리티어
____크롬디버거
____그밖의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장.온라인포럼애플리케이션리액트클라이언트만들기
__기술적요구사항
__초기버전의리액트애플리케이션만들기
____CSSGrid
____에러경계
____데이터서비스계층
____내비게이션메뉴
____인증컴포넌트
____라우팅과화면
____홈화면
____스레드게시화면
__요약


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


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


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


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


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

출판사 서평

◈이책에서다루는내용◈

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


◈이책의대상독자◈

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


◈이책의구성◈

1장,‘타입스크립트이해하기’에서는타입스크립트가무엇이며대규모애플리케이션개발에사용하면좋은이유를살펴본다.
2장,‘타입스크립트살펴보기’에서는타입스크립트를좀더자세히살펴본다.정적타입을포함한여러가지타입스크립트의기능을알아보고이러한기능이자바스크립트보다개선된이유를살핀다.
3장,‘ES6+로앱만들기’는모든개발자가알아야하는자바스크립트의중요기능을다룬다.ES6이상버전에추가된최신기능을중심으로알아본다.
4장,‘SPA의개념과리액트에서사용하는방법’에서는SPA(Single-PageApplication)스타일의앱에초점을둔웹사이트개발방법을배운다.그리고리액트를소개하고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클라우드서비스에배포하는방법을다룬다.