책 리뷰

배워서 바로 쓰는 스프링 프레임워크

seungdols 2020. 5. 30. 18:26

배워서 바로 쓰는 스프링 프레임워크

이 책은 요즘 나오는 스프링 책과는 조금 다르고, 요즘은 보통 스프링 부트에 집중하는 편인 책들이 많다.

그런데, 이 책은 스프링 부트이야기 보다 힙합으로 치면, 올드 스쿨 스프링 프레임워크에 대한 전반적인 설명을 담고 있다. 물론, 예제와 같이 말이다.

이런 점에서 요즘 핫한 Spring WebFlux 같은 챕터가 맨 마지막 한 단원 구성만 되어 있는데, 그런 부분은 좀 아쉬운 사람들이 있을 수 있겠다는 생각을 했다.

요즘은 주로 Spring WebFlux 기반으로 프로젝트를 많이 만들고, (프로젝트 구성) 또한 XML기반에서 벗어나 자바빈 설정으로 주로 옮겨 갔고, 이마저도 올드한 방식이며, Spring Boot기반의 프로젝트들은 어노테이션 기반의 설정과 properties로 분리 해둔 설정 값으로 프로젝트를 주로 구성 한다.

물론, 어떠한 방식을 써도 설정은 다 동작 하는데, XML기반 설정을 굳이 봐야 되는지? 묻는다면, 나는 당당하게 말할 수 있는데, 봐두면 좋다는 것이 내 지론이다.

결국, 프로그래밍의 세계도 경험치의 기반한 짬바?!가 작동하는 바닥이라, XML설정이 어떻게 구성 되고, 어떻게 자바 빈으로 대체 설정이 가능한지? 어떻게 어노테이션기반으로 설정이 되는지? 흘러가는 흐름을 알아두면, 스프링 프레임워크를 많이 다뤄 본 사람 보다 앞으로 더 잘알게 될 가능성이 높은데, 초반부는 사실 기본적인 흔히 들어본, 빈 설정, 빈 주입등, DB연동, JPA와 MongoDB를 이용한 예제가 담겨 있다.

후반부에는 Spring WebMVC를 활용해 RESTful 웹 서비스등, 실질적인 스프링을 활용한 웹 서비스 개발에 대한 예시를 담고 있는데, 그 와중에 AOP를 먼저 설명하고 지나가는데, AOP를 사실 실무에서 그렇게 써본적이 없다 보니, 애매한 부분이 정말 잘 쓰는 방법에 대해서는 좀 어렵다.

물론, 있었던 AOP설정 마저 복잡성을 증대한다는 이유로 모두 제거 하였다. 현재는 쓰고 있지 않다.
(그 말은 결국, 스프링에서 AOP를 안써도 큰 무리는 없다는 소리다.) 결과적으로 AOP를 이해하지 않고 넘어가더라도 무방 하다는 말이며, 이해하기 어렵다면, 건너 뛰는게 스프링 생태계를 학습하는 제일 좋은 방법 같다.

이해가 안되는게 당연하니, 이해가 안되면 그냥 넘어가고 다음장을 배우는게 훨씬 시간대비 효율성이 증대 된다.

우리가 수학을 배울 때, 피타고라스의 정리를 그냥 외우듯이 학습하지 않은가? 피타고라스의 정리는 그냥 이거다! 라고 배우듯이 어? 굳이 모든 것을 이해하려고 하지 말자.

AOP는 진짜 어렵고, 잘 쓰는 사람도 사실 잘 없는 것 같다. 그리고 막 쓰는 순간 그 프로젝트는 복잡성이 증가하게 된다.

그 뒤에는 다양한 주제들이 내포 되어 있는데 RxJava같은 경우는 사실 이름만 들어보고, 어떤 녀석이다 정도만 알고 있다. 솔직히 괜시리 있어보인다는 이유로 도입하지는 말자.

잘 써야 좋은거지, 막 쓴다고 서비스의 생산성이나 구조도가 아름답게 된다거나, 이벤트 처리가 더 잘 된다는 보장이 없다. 솔직히, 기본기만 좀 먼저 보는게 좋아보인다.

프로그래밍 입문자는 이 책에서 필요하지 않은 부분은 그냥 건너 뛰어라. 그게 정답이다.

애초에 입문을 스프링으로 한다는 자체가 좀 큰 벽을 먼저 깨부시는 격인데, 그래도 도전은 좋다. 🙂

끝으로 이 책은 스프링을 실무에서 막 써야 하는 초년생 프로그래머, 졸업을 앞둔 프로그래머들이 읽기 좋고, 업무 이동이나 스프링이 궁금한 프로그래머들이 보기에 좋은 책이다. (물론, 더불어 토비의 스프링을 꼭 봐야 한다.)

반응형