코틀린&스프링 부트로 개발은 처음인데요 (단계별로 학습하는 백엔드 실전 프로젝트)

코틀린&스프링 부트로 개발은 처음인데요 (단계별로 학습하는 백엔드 실전 프로젝트)

$33.00
Description
무엇을 모르는지 알아가는 진짜 학습의 시작! 백엔드 입문자를 위한 웹 개발 실전 프로젝트파편화된 웹 개발 지식을 하나의 서비스로 완성하는 일은 입문자에게 가장 높은 벽입니다. 이 책은 기본 문법은 익혔지만, 문법을 응용해 나만의 결과물을 만드는 데 어려움을 느끼는 백엔드 입문자를 위한 웹 개발 가이드입니다. 데이터베이스 설계를 시작으로 코틀린과 스프링 부트를 활용해 웹사이트를 직접 구현하고, 배포하는 웹 개발의 전체 과정을 배웁니다. 이론으로만 듣던 JPA와 트랜잭션, 레이어드 아키텍처 같은 핵심 개념을 실무 프로젝트에서 어떻게 사용하는지 직접 손으로 익힐 수 있습니다. 스프링 데이터 JPA로 복잡한 데이터 처리를 간단히 끝내고, n+1 문제와 같은 성능 고민도 직접 해결해 봅니다. 단순한 따라하기를 넘어, 도커와 GCP 기반의 클라우드 인프라 구축과 HTTPS 보안 설정을 통해 서비스가 실제로 운영되는 메커니즘을 완벽히 이해할 수 있습니다.
저자

정보근

경제학과동양철학을전공한뒤IT기획자를지망하다우연히서점에서본파이썬책으로프로그래밍의재미에빠져백엔드개발자의길을걷게되었습니다.스프링과자바,코틀린으로이커머스도메인에서클레임,제휴,광고,물류등다양한분야의시스템을개발하며실무경험을쌓았습니다.실무에서배운지식을나누고싶어교육플랫폼인프런에강의를올렸고,같은마음으로이책을집필했습니다.비전공자로서많은시행착오를겪었기에이책의독자들은조금이라도더수월한여정을걷기를바랍니다.

목차

CHAPTER01코틀린과스프링부트로웹개발시작하기
1-1웹개발에필요한기본개념
_1-1-1웹서비스를구성하는요소
_1-1-2웹브라우저와서버의상호작용방식
_1-1-3웹프레임워크
_1-1-4HTTP
1-2코틀린과스프링부트
_1-2-1코틀린
_1-2-2스프링부트
_1-2-3MVC패턴
_1-2-4레이어드아키텍처
_1-2-5스프링빈과의존성주입


CHAPTER02개발환경준비하기
2-1개발환경소개
_2-1-1줄루JDK
_2-1-2인텔리제이IDEA
_2-1-3깃
_2-1-4디비버
_2-1-5포스트맨
_2-1-6도커
2-2개발환경설정하기
_2-2-1윈도우개발환경설정하기
_2-2-2맥OS개발환경설정하기


CHAPTER03프로젝트설계하기
3-1프로젝트미리보기
_3-1-1인덱스페이지
_3-1-2이력서페이지
_3-1-3프로젝트페이지
_3-1-4어드민페이지
_3-1-5가상프로필작성하기
3-2데이터베이스기초
_3-2-1데이터베이스란
_3-2-2관계형데이터베이스
3-3트랜잭션
_3-3-1트랜잭션이란
_3-3-2트랜잭션의ACID속성
_3-3-3트랜잭션격리수준
3-4프로젝트데이터베이스설계하기
_3-4-1인덱스페이지테이블
_3-4-2이력서페이지테이블
_3-4-3프로젝트페이지테이블
_3-4-4어드민페이지테이블
_3-4-5ERD그려보기


CHAPTER04프로젝트시작하기
4-1스프링부트프로젝트만들기
_4-1-1스프링이니셜라이저
_4-1-2포트폴리오프로젝트초기화하기
_4-1-3스프링부트실행하기
4-2깃허브에프로젝트저장하기
_4-2-1깃용어와명령어
_4-2-2깃초기화하기


CHAPTER05도메인개발하기
5-1JPA
_5-1-1JPA개요와장단점
_5-1-2엔티티
_5-1-3영속성컨텍스트
5-2엔티티개발하기
_5-2-1데이터베이스정보설정하기
_5-2-2BaseEntity개발하기
_5-2-3연관관계가없는엔티티개발하기
_5-2-4연관관계가있는엔티티개발하기
5-3리포지터리개발하기
_5-3-1스프링부트데이터JPA로CRUD하기
5-4테스트코드,성능개선,테스트데이터초기화하기
_5-4-1리포지터리테스트하기
_5-4-2리포지터리성능개선하기
_5-4-3DataInitializer클래스개발하기


CHAPTER06백엔드개발하기:프레젠테이션레이어
6-1DTO개발하기
_6-1-1인덱스페이지DTO개발하기
_6-1-2이력서페이지DTO개발하기
_6-1-3프로젝트페이지DTO개발하기
6-2서비스개발하기
_6-2-1프레젠테이션리포지터리개발하기
_6-2-2프레젠테이션서비스개발하기
_6-2-3프레젠테이션서비스테스트하기
6-3컨트롤러개발하기
_6-3-1프레젠테이션뷰컨트롤러개발하기
_6-3-2프레젠테이션API컨트롤러개발하기
_6-3-3프레젠테이션API컨트롤러테스트하기
6-4인터셉터개발하기
_6-4-1인터셉터란
_6-4-2인터셉터개발하기
_6-4-3인터셉터등록하기


CHAPTER07프런트엔드개발하기:프레젠테이션레이어
7-1부트스트랩템플릿가져오기
_7-1-1부트스트랩이란
_7-1-2템플릿내려받기
_7-1-3프로젝트로가져오기
7-2부트스트랩템플릿에타임리프적용하기
_7-2-1인덱스페이지만들기
_7-2-2이력서페이지만들기
_7-2-3프로젝트페이지만들기
_7-2-4공통레이아웃적용하기


CHAPTER08백엔드개발하기:어드민레이어
8-1공통기능개발하기
_8-1-1커스텀익셉션개발하기
_8-1-2컨트롤러어드바이스개발하기
_8-1-3DTO개발하기
_8-1-4인터셉터개발하기
8-2페이지별기능개발하기
_8-2-1화면조회개발하기
_8-2-2CRUDAPI개발하기
_8-2-3대시보드기능개발하기


CHAPTER09프론트엔드개발하기:어드민레이어
9-1화면공통구성요소개발하기
_9-1-1부트스트랩템플릿가져오기
_9-1-2템플릿조각분리하기
_9-1-3템플릿조각수정하기
_9-1-4레이아웃적용하기
_9-1-5사이드바개발하기
9-2페이지별기능개발하기
_9-2-1데이터테이블개발하기
_9-2-2입력폼개발하기
_9-2-3입력폼모달개발하기
_9-2-4상세데이터조회기능개발하기
_9-2-5신규데이터삽입기능개발하기
_9-2-6기존데이터수정기능개발하기
_9-2-7기존데이터삭제기능개발하기
_9-2-8대시보드페이지만들기


CHAPTER10프로젝트배포하기
10-1스프링시큐리티로로그인기능추가하기
_10-1-1스프링시큐리티설정하기
_10-1-2계정기능개발하기
_10-1-3로그인서비스개발하기
10-2도커로컨테이너실행하기
_10-2-1도커란
_10-2-2도커로MySQL컨테이너실행하기
_10-2-3도커로실습프로젝트컨테이너실행하기
10-3구글클라우드플랫폼으로프로젝트배포하기
_10-3-1구글클라우드플랫폼이란
_10-3-2컴퓨트엔진가상머신인스턴스만들기
_10-3-3가상머신에서컨테이너실행하기
10-4도메인연결하기10-4-1도메인구입및연결하기
_10-4-2HTTPS적용하기
_10-4-3HTTPS자동연장하기

찾아보기

출판사 서평

무엇을다루나요?•웹개발기초및환경설정

•트랜잭션이해및데이터베이스설계
•레이어드아키텍처기반의백엔드구현
•타임리프와부트스트랩을이용한화면구성
•어드민기능구현과스프링시큐리티를활용한보안설정
•도커와GCP를활용한컨테이너기반클라우드배포

누구에게추천하나요?•전공수업과실전사이의'빈틈'을채우고싶은전공자
•문법공부를넘어진짜'결과물'을만들고싶은백엔드입문자
•실제운영이가능한백엔드'포트폴리오'가필요한취업준비생