본문 바로가기

소프트웨어,IT,컴퓨터공학 도서리뷰/스프링 프레임워크(스프링, 스프링부트, JPA)

React.js, 스프링 부트(Spring boot), AWS로 배우는 웹 개발 101. - 김다정 지음- [에이콘] [책리뷰]

프론트엔드 서버 & 백엔드 서버

환창한 날씨의 미국의 대형 마트를 보는 것 같은 표지

 

왜 이 책을 골랐는가

 

스프링의 원리를 제대로 공부하지 않고 스프링 부트를 공부하는 중이다. 

[스프링 부트를 공부하면서 의문점이 드는 순간에 원리에 접근해서 공부하고 있다. ]

 

시중에 나온 스프링 부트 책을 2~3권 정도 읽었는데 해당 책들 모두 기존의 스프링 프레임워크에서 진행한 서비스들과 비슷한 구조로 예제를 진행했다.

[ 특정 서비스 도메인 선택 -> 도메인 모델 개발 -> JPA 활용 -> 서비스 & 컨트롤러 처리 -> View(타임리프 혹은 머스터치) 이후 옵션에 따라 컨테이너 배포 과정 추가 ]

 

마이크로 서비스 아키텍처의 관점으로 스프링 부트를 공부하고 있던 나에게

 

View를 반환하는 백엔드 애플리케이션을 개발하는 것은 큰 흥미가 생기지는 않았다.

 

나에게 필요했던 것은 프론트 서버와 통신할 수 있도록 백엔드 서버를 만들어보는 경험들이었는데

 

이를 위해서 프론트 서버를 구축하려고 자바스크립트 및 React.js를 공부했는데.. 진지하게 너무 어려웠다.

 

책 하나 잡고 공부하려고 하고자 React 공부 추천에 대한 글들을 찾아봤는데

 

커뮤니티 혹은 몇몇 기술 블로거 분들의 반응은 다음과 같았다.

 

"프론트엔드의 환경이 너무도 급변해서 인터넷으로 배우는 게 좋아요!"

 

그래서 인터넷으로 접근 했다... 그것도 너무 어려웠다. 

[ 사용자 인터렉션만 확인해볼 수 있을 정도로 프론트 서버를 만들어보는 정도만 필요했는데.. ]

 

그렇게 스프링 부트를 활용해서 모놀리식 시스템을 개발하고 있을 즈음 해당 책을 발견하게 되었다.

 

React와 Springboot의 만남을 통해

 

나의 프론트 서버와 백엔드 서버의 분리에 대한 관점을 향한 갈증을 해소해줄 것 같았다!

 

이러한 갈증은 책을 읽고 시원하게 해소되었다!

 


 

요약 평가 [ 제목 2 ]

추천도 : 6/7 

★★★★★★☆

 

1점의 아쉬움 : 프론트 서버, 백엔드 서버 둘 다를 다루다 보니 깊게 들어가기가 어려운 부분들이 존재한다.

해당 부분에 대한 참고서나 좋은 기술 블로그 등의 참고를 남겼더라면 더 좋지 않았을까 한다.

그래도 충분한 설명과 구글링에 대한 핵심 키워드들이 들어가니 읽다가 완전하게 이해되지 않으면 구글을 활용하자!

 

읽은 기간 📅 : 2021년 12월 ~ 2022년 1월

 

이 책을 추천하는 이들 👨‍👧

  • 프론트 서버와 백엔드 서버를 분리해서 애플리케이션을 구현해보고 싶은 사람들.
  • 스프링 부트 + 스프링 시큐리티에 대한 실용적인 접근을 고민하는 분들
  • React에 대한 기초가 없어 프론트 서버를 만드는 것에 어려움을 느꼈던 분들
  • AWS의 활용기가 필요한 분들

 

난이도 🦈

중 ~ 중상

 

이론적으로 이해가 어려웠던 부분은 구글링을 통해서 해소했다.

 

관련된 책들 📚

  1. 스프링 부트와 관련된 책들
  2. JPA 관련 책

 

한 줄 평 ✍️

주니어 개발자를 위한 안내서와 같은 책이다.

[ 프론트 개발자, 백엔드 개발자 모두에게 정말 좋은 책이라 생각한다. ]

 

실용적인 부분에서는 상당히 진지한 책.

 

웹 개발자에게 정말 실용적인 책이다.

 

토이 프로젝트를 경험하면서 상당히 난해한 영역이 바로 보안 처리와 배포 경험에 대한 부분이다.

 

마이크로서비스 아키텍처를 공부하지만 해당 아키텍처를 다룰 때 가장 난감한 상태로 공부했던 부분이 보안에 대한

부분이었다. [ 인증과 인가 ]

 

서비스들의 조합을 다루다 보니까 어디에서 인증과 인가를 처리해줘야 하는지에 대해서 궁금증으로만 남겼었다.

 

이 책을 보고 스프링 시큐리티의 방식과 최근의 보안에 대한 처리 방식(토큰 기반)을 접해보면서 이러한 인증 처리 기반이라면 서비스 간의 보안 처리는 문제가 없겠구나!를 경험할 수 있었다.

 

프로덕션 배포와 관련된 부분도 좋았다.

 

대기업 마저 자사의 IT 시스템을 클라우드로 마이그레이션 하는 시대이기 때문에 클라우드 벤더의 활용 능력이 정말 중요해지고 있는 시대이다.

 

가상 인프라 환경을 다루는 역량이 필요한데 완벽한 것은 아니지만 뒷부분에서 AWS에 대한 실용적인 구조를 알려준다.

 

일라스틱 빈스톡(EB)와 관련된 부분은 나에게 신선한 충격을 주었던 부분이다.

 

이전에 AWS 자격증을 공부하면서 AWS 내부의 서비스들을 하나하나 공부하면서 접근했던 지식들을

 

몇 번의 질문에 대한 응답으로 알아서 AWS 시스템이 구축되다니... 놀라웠던 부분이다.

 

풀 스택의 영역을 다루기 때문에 부분적으로 부족했다고 생각하는 부분을 집중적으로 살펴보면 좋을 책이라고 생각한다.

 

책의 예제를 진행하다 막힌다면 깃헙의 discussion을 꼭 참고하기를.

https://github.com/fsoftwareengineer/todo-application/discussions

 

GitHub - fsoftwareengineer/todo-application

Contribute to fsoftwareengineer/todo-application development by creating an account on GitHub.

github.com

 

책을 집필하는 시점은 시간이 갈수록 오래된 과거로 남게 되기에 라이브러리나 프레임워크 버전에서 문제가 되는

부분이 있다. [ 나의 경우 스프링 시큐리티 파트가 그랬다. ]

 

"토론" 섹션에 질문을 남긴다면 저자가 빠르게 답변해주니 참고하기를 바란다!

 

JPA와 관련된 책.

 

해당 책을 읽는다면.

 

실용적인 주니어가 되는데 충분한 기초 체력을 가질 수 있지 않을까 한다.

 

이후의 이론적인 배경이나 깊은 지식은 상황에 맞게 접근하면 좋을 듯 하다.

 

좋은 책을 집필하고, 독자들에게 빠르게 피드백 해주시는 김다정 저자님에게 감사를 전합니다.

반응형