Go 풀스택 웹 개발 (Go와 리액트, Gin, GopherJS를 사용한 풀스택 웹 프로그래밍)

Go 풀스택 웹 개발 (Go와 리액트, Gin, GopherJS를 사용한 풀스택 웹 프로그래밍)

$31.44
Description
Go 언어와 리액트를 사용한 풀스택 개발을 소개한다. 간단한 웹 서비스의 프론트엔드와 백엔드를 처음부터 순차적으로 구현한다. Go 언어의 기본 개념과 문법을 설명하고 고루틴과 채널 등의 동시성 프로그래밍 개념도 소개한다. 리액트 프레임워크를 사용해 프론트엔드를 개발하고 백엔드는 Go 기반의 Gin 프레임워크를 사용해 RESTful API 서버를 구축한다. 나아가 유닛 테스트와 벤치마킹을 통해 작성한 코드를 검증하는 방법을 소개한다. 프로그래밍의 기본 개념을 이해하고 개발 경험이 있는 초, 중급 개발자를 대상으로 한다.
저자

미나안드라오스

개인프로젝트와실무를통해Go프로그래밍에많은경험을쌓은엔지니어다.Go언어관련글과튜토리얼을주기적으로집필하고,Go언어기반오픈소스프로젝트에참여한다.다양한Go프로그램을개발했으며자바와C#,C++,파이썬에도능숙하다.소프트웨어개발외에도스크럼마스터링과세일즈엔지니어링,소프트웨어제품관리등의분야에서실무경험을쌓았다.

목차

1부.Go언어

1장.풀스택Go
__풀스택개발이란?
__프로젝트
____애플리케이션구조
__이책의구성

2장.Go언어의구성요소
__개발환경설정
____Go플레이그라운드
____Go워크스페이스설정
__패키지와변수,자료형,포인터
____패키지
____변수와자료형
____포인터
__함수와클로저
____함수:기본구조
____함수:다른패키지함수호출
____클로저
__Go자료구조
____배열
____슬라이스
____맵
____구조체
____메서드
__인터페이스
__조건문과반복문
____if문
____switch문
____반복문
__Panic,recover,defer
__요약
__질문거리
__더읽을거리

3장.Go동시성프로그래밍
__동시성
__고루틴
__Go채널
____일반채널
____버퍼채널
__select구문
__sync패키지
____간단한뮤텍스
____읽기-쓰기뮤텍스
____대기그룹
__요약
__질문거리
__더읽을거리

2부.프론트엔드

4장.React.js와프론트엔드개발
__전제조건과기술적요구사항
__GoMusic프로젝트
____Node.js와npm
____HTML과CSS,부트스트랩
____프로젝트코드
__리액트프레임워크
____리액트애플리케이션개발
____프로젝트설정
____JSX와리액트엘리먼트
____리액트컴포넌트
____개발툴
__요약
__질문거리
__더읽을거리

5장.GoMusic프론트엔드개발
__준비물과기술적요구사항
__GoMusic만들기
____메인페이지
____모달윈도우와신용카드결제처리
____사용자페이지
____컴포넌트연결:라우팅
__요약
__질문거리
__더읽을거리

3부.Go웹API와미들웨어

6장.Gin프레임워크기반GoRESTful웹API
__기술적요구사항
____RESTfulAPI
____개요
____HTTP메서드
__Gin프레임워크
____모델과데이터베이스레이어
__Gin프레임워크와RESTAPI레이어개발
____라우팅정의
____핸들러구현
____정리
__요약
__질문거리
__더읽을거리

7장.Gin과리액트기반고급웹애플리케이션
__기술적요구사항
__데이터베이스레이어
____관계형데이터베이스
____ORM
__미들웨어
____커스텀미들웨어
__보안
____인증서와개인키
____Gin프레임워크와HTTPS
____패스워드해싱
__신용카드결제
____백엔드에서신용카드결제요청처리
__프론트엔드마무리
____프론트엔드구조
____프론트엔드와백엔드연결
____쿠키사용
____프론트엔드애플리케이션배포
__요약
__질문거리
__더읽을거리

8장.웹API테스트와벤치마킹
__Go테스트
____목킹
____Go유닛테스트
__벤치마킹
__요약
__질문거리
__더읽을거리

9장.GopherJS와동형Go프로그래밍소개
__기술적요구사항
__GopherJS기초
____GopherJS자료형
____Go코드에서자바스크립트함수호출
____GopherJS명령어
____Go바인딩
____코드익스포트
__리액트와GopherJS
____프로젝트
____Go기반의리액트애플리케이션
__요약
__질문거리
__더읽을거리

10장.클라우드네이티브애플리케이션과리액트네이티브프레임워크
__클라우드네이티브애플리케이션
____마이크로서비스
____컨테이너
____서버리스애플리케이션
____지속적인배포
__리액트네이티브프레임워크
____리액트네이티브란?
____엑스포
__요약
__질문거리

출판사 서평

★이책에서다루는내용★
■실제애플리케이션구현을통한Go프로그래밍이해
■리액트프레임워크기반의애플리케이션프론트엔드구현
■GopherJS프레임워크와동형Go웹개발
■Gin프레임워크기반의RESTful웹API개발
■ORM레이어와보안통신,스트라이프API등의유용한백엔드기술
■Go언어기반의웹API테스트와벤치마킹

★이책의대상독자★
Go언어기반의풀스택웹애플리케이션개발을처음시작하는개발자를위한책이다.

★이책의구성★
1장,‘풀스택Go’에서는이책에서다루는주제를살펴보고,개발할애플리케이션의구조도알아본다.이책에서무엇을배울지전반적으로소개한다.
2장,‘Go언어의구성요소’에서는Go언어기반의애플리케이션을만드는데반드시필요한기본개념을설명한다.Go언어의변수선언문과조건문,루프,함수등을살펴본다.자료구조를정의하고메서드에서사용하는방법도설명한다.나아가프로그램의행위를정의하는인터페이스를작성하는방법도알아본다.
3장,‘Go동시성프로그래밍’에서는Go언어의동시성을설명한다.Go언어가지원하는고루틴과채널,select문등을알아보고효율적인동시성프로그램개발에반드시필요한잠금과대기그룹(waitgroup)의개념도배운다.
4장,‘리액트와프론트엔드개발’에서는인기있는React.js프레임워크의구성요소를설명한다.리액트프레임워크의핵심요소인리액트컴포넌트를살펴본다.나아가컴포넌트로데이터를전달하는방법과상태를제어하는방법,리액트개발툴을사용하는방법을배운다.
5장,‘GoMusic프론트엔드개발’에서는앞에서학습한내용을바탕으로GoMusic애플리케이션의프론트엔드를구현한다.GoMusic에필요한리액트컴포넌트를만들고개발툴을사용해프론트엔드를수정한다.프론트엔드의대부분을구현한다.
6장,‘Gin프레임워크기반GoRESTful웹API’에서는Gin프레임워크와RESTful웹API를소개한다.Gin프레임워크의개념과구성요소를알아보고이를사용해웹API를작성한다.HTTP요청라우팅과그룹핑의개념도알아본다.
7장,‘Gin과리액트기반고급웹애플리케이션’에서는Gin프레임워크와웹API의심도있는주제를설명한다.미들웨어사용과사용자인증,로깅,모델바인딩검증등의중요하고실용적인주제를다룬다.ORM의개념과GoORM을사용해웹API백엔드와MySQL을연결하는방법을학습한다.앞에서작성한리액트프론트엔드의구현을마무리하고Go백엔드와연결하는방법을다룬다.나아가리액트애플리케이션을빌드하고배포하는방법을알아본다.
8장,‘웹API테스트와벤치마킹’에서는Go애플리케이션을테스트하고벤치마킹하는방법을설명한다.유닛테스트를작성할때사용하는testing패키지가제공하는타입과메서드를살펴본다.이를기반으로앞서작성한코드를벤치마킹하고성능을측정한다.
9장,‘GopherJS와동형Go프로그래밍소개’에서는프론트엔드를Go언어로작성할수있도록Go코드를자바스크립트코드로트랜스파일하는GopherJS오픈소스프로젝트를소개한다.자바스크립트대신Go언어로프론트엔드를구현해야한다면GopherJS를권한다.GopherJS의개념과몇가지예제와사용사례를살펴보고GopherJS를사용해간단한리액트애플리케이션을구현한다.
10장,‘클라우드네이티브애플리케이션과리액트네이티브프레임워크’에서는이책이후에나아갈학습방향을제시한다.클라우드네이티브아키텍처와컨테이너의개념과리액트네이티브를사용한모바일앱개발을소개한다.