이 상품은 구매 후 지원 기기에서 예스24 eBook앱 설치 후 바로 이용 가능한 상품입니다.
|
1장. 개발을 시작하기 전에1.1 Todo 웹 애플리케이션 1.1.1 Todo 웹 애플리케이션 기능1.1.2 Todo 웹 애플리케이션 아키텍처1.1.3 기술과 구현 사이1.1.4 정리1.2 배경 지식1.2.1 하이퍼텍스트 트랜스퍼 프로토콜1.2.2 자바스크립트 오브젝트 노테이션1.2.3 서버란?1.2.4 정적 웹 서버1.2.5 동적 웹 서버1.2.6 자바 서블릿 컨테이너/엔진1.2.7 정리2장. 백엔드 개발2.1 백엔드 개발 환경 설정2.1.1 자바 8 설치2.1.2 이클립스 설치2.1.3 스프링 프레임워크와 의존성 주입2.1.4 스프링 프레임워크와 디스패처 서블릿(중제목)2.1.5 스프링 부트 프로젝트 설정2.1.6 메인 메서드와 @SpringBootApplication2.1.7 빌드 자동화 툴: Gradle과 라이브러리2.1.8 디펜던시 라이브러리 추가2.1.9 롬복2.1.10 포스트맨 API 테스트2.1.11 정리2.2 백엔드 서비스 아키텍처2.2.1 레이어드 아키텍처2.2.2 모델, 엔티티, DTO2.2.3 REST API2.2.4 컨트롤러 레이어 : 스프링 REST API 컨트롤러2.2.5 서비스 레이어 : 비즈니스 로직2.2.6 퍼시스턴스 레이어 : 스프링 데이터 JPA2.2.7 정리2.3 서비스 개발 및 실습2.3.1 Create Todo 구현2.3.2 Retrieve Todo 구현2.3.3 Update Todo 구현2.3.4 Delete Todo 구현2.3.5 정리3장. 프론트엔드 개발3.1 프론트엔드 개발 환경 설정3.1.1 Node3.1.2 비주얼 스튜디오 코드 설치3.1.3 프론트엔드 애플리케이션 생성3.1.4 material-ui 패키지 설치3.1.5 브라우저의 작동 원리3.1.6 React3.1.7 정리3.2 프론트엔드 서비스 개발3.2.1 Todo 리스트3.2.2 Todo 추가3.2.3 Todo 삭제3.2.4 Todo 수정3.2.5 정리3.3 서비스 통합3.3.1 componentDidMount3.3.2 CORS3.3.3 fetch3.3.4 정리4장. 인증 백엔드 통합4.1 REST API 인증 기법4.1.1 Basic 인증4.1.2 토큰 기반 인증4.1.3 JSON 웹 토큰4.1.4 정리4.2 User 레이어 구현4.2.1 UserEntity4.2.2 UserRepository4.2.3 UserService4.2.4 UserController4.2.5 정리4.3 스프링 시큐리티 통합4.3.1 JWT 생성 및 반환 구현4.3.2 스프링 시큐리티와 서블릿 필터4.3.3 JWT를 이용한 인증 구현4.3.4 스프링 시큐리티 설정4.3.5 TodoController에서 인증된 유저 사용하기4.3.6 패스워드 암호화4.3.7 정리5장. 인증 프론트엔드 통합5.1 라우팅5.1.1 react-router-dom5.1.2 react-router-dom 라이브러리가 필요한 이유5.1.3 로그인 컴포넌트5.1.4 접근 거부 시 로그인 페이지로 라우팅하기5.1.5 정리5.2 로그인 페이지5.2.1 로그인을 위한 API 서비스 메서드 작성5.2.2 로그인에 성공5.2.3 정리5.3 로컬 스토리지를 이용한 액세스 토큰 관리5.3.1 로컬 스토리지5.3.2 액세스 토큰 저장5.3.3 정리5.4 로그아웃과 글리치 해결5.4.1 로그아웃 서비스5.4.2 네비게이션 바와 로그아웃5.4.3 UI 글리치 해결5.4.4 정리5.5 계정 생성 페이지5.5.1 계정 생성 로직5.5.2 정리6장. 프로덕션 배포6.1 서비스 아키텍처6.1.1 EC26.1.2 라우트 53 - DNS6.1.3 애플리케이션 로드밸런서6.1.4 오토 스케일링 그룹6.1.5 VPC와 서브넷6.1.6 일라스틱 빈스톡6.1.7 정리6.2 AWS CLI와 EB CLI 설치6.2.1 AWS 계정 생성6.2.2 파이썬 설치6.2.3 AWS CLI 설치6.2.4 AWS CLI 설정6.2.5 pip을 이용해 EB CLI 설치6.2.6 윈도우 사용자를 위한 환경 변수 설정6.2.7 정리6.3 AWS 일라스틱 빈스톡을 이용한 백엔드 배포6.3.1 일라스틱 빈스톡이란?6.3.2 eb init을 이용해 애플리케이션 생성6.3.3 백엔드 애플리케이션 설정6.3.4 eb create를 이용해 AWS에 환경 생성6.3.5 애플리케이션 배포6.3.6 환경 구성6.3.7 엔드포인트 테스팅6.3.8 프론트엔드 통합 테스팅6.3.9 정리6.4 AWS 일라스틱 빈스톡을 이용한 프론트엔드 배포6.4.1 eb init을 이용해 애플리케이션 생성6.4.2 eb create를 이용한 애플리케이션 배포6.4.3 크로스-오리진 문제6.4.4 정리6.5 Route53 도메인 설정6.5.1 도메인 구매6.5.2 호스팅 영역 생성6.5.3 백엔드 재배포6.5.4 프론트엔드 재배포6.5.5 정리6.6 백엔드/프론트엔드 AWS Certificate Manager를 이용한 https 설정6.6.1 인증서 요청6.6.2 백엔드 애플리케이션 HTTPS설정6.6.3 프론트엔드 애플리케이션 HTTPS 설정6.6.4 정리맺음말
|
김다정의 다른 상품
|
[이 책에서 다루는 내용]■ REST 백엔드, React 프론트엔드, AWS를 이용한 간단한 Todo 애플리케이션 개발■ 스프링 부트, 그래들, 메이븐 리포지터리, 롬복, JPA 등 REST API 개발에 필요한 내용 설명■ React.js의 원리와 프론트엔드 개발에 필요한 기초 지식 설명■ React.js와 같은 싱글 페이지 애플리케이션Single Page Application의 동작 방식 설명■ JWT를 이용한 인증 이론과 구현을 충실히 설명■ AWS 일라스틱 빈스톡을 이용해 애플리케이션을 배포하는 방법 및 배포 시 사용되는 EC2, 오토 스케일링 그룹, 로드 밸런서, RDS, 등의 리소스 설명■ Route 53에서 DNS를 등록하는 방법과 DNS를 로드 밸런서로 연결하는 방법 설명[이 책의 대상 독자]■ 스프링 MVC를 개발할 줄 알지만 다른 아키텍처를 경험해 보고 싶은 학생/주니어 개발자■ 프론트엔드와 백엔드가 분리된 아키텍처를 구축해 보고 싶은 학생/주니어 개발자■ 실제 웹 서비스를 작성하고 운영해 보고 싶은 학생/주니어 개발자■ AWS에서 웹 서비스를 운영해 보고자 하는 학생/주니어 개발자■ 서비스 스케일에 관심이 있는 학생/주니어 개발자■ 실무에서 많이 사용하는 아키텍처 패턴에 관심있는 학생/주니어 개발자[지은이의 말]이 책에 나오는 기술은 필자가 주니어 시절 실무 현장에서 혼자 익히고 배운 기술들이다. 스프링 부트나 React.js, JWT, AWS 모두 많이 알려진 기술이고 따로따로 배우면 어렵지 않다. 그러나 이를 합쳐서 하나의 서비스를 만드는 것은 쉬운 일이 아니다. 필자는 출시 가능한 서비스를 만드는 방법을 몰랐다. 주니어 시절에 일했던 회사에서는 대부분 인프라가 이미 구축된 상태여서 서비스 운영에 필요한 것이 무엇인지 알지 못한 채 컴포넌트 개발만 했다. 또 학생 때는 스프링 MVC 프로젝트를 했는데 입사해 보니 다 REST 기반의 마이크로서비스를 사용하고 있었다. 게다가 필자가 궁금했던 것은 사설망이나 로드 밸런서, API 게이트웨이, 인증 등 네트워크나 보안 관련 기술이었는데 권한이 없어 접근조차 할 수 없었다. 그 결과 로컬에서는 다양한 기술을 많이 사용해 봤는데도 실제 서비스로 운영하는 방법은 알지 못했다. 당시에는 무엇을 공부해야 하는지도 모른 채 이 기술 저 기술을 주먹구구식으로 배웠다.이 책은 주니어 시절의 필자 같은 학생 또는 개발자들을 위한 책이다. Node.js로 백엔드와 프론트엔드를 개발하고 Spring MVC와 Thymeleaf를 이용한 실습만 해봤는데 막상 회사에 들어가니 전부 마이크로서비스 기반이라거나, 로컬에서 돌아가는 웹 서비스는 하루에 10개도 만들 수 있는데 인증이나 배포에서 늘 막히는 등과 같은 경우에 도움이 되고자 한다. 또 프론트엔드와 백엔드가 분리된 아키텍처를 경험해 보고 싶거나 아이디어가 있는데 어떻게 서비스를 만들어야 할지 모를 때 이 책을 통해 먼 길 돌아가지 않고 필요한 기술을 배우고, 또 이후 배워야 할 기술들을 발굴하는 기회가 되었으면 하는 바다.
|