[Book리뷰] 토비의 스프링3.1 Vol.1

devdo·2022년 5월 23일
0

Book리뷰

목록 보기
5/8
post-custom-banner

스프링 기술의 외국 서적의 번역본이 아닌 우리나라 저자로서 쓰인 스프링 책의 표본이라 할 수 있는 토비의 스프링3.1

알라딘 중고서점에서 산 이후로 그 책의 두께와 압도적인 옛날스러움?에 경악스러웠다. 목차만 봐도 이게 이렇게 길게 얘기할 거리인가? 했던 생각이 난다. DI와 IoC 얘기하는 게 이렇게 길게 할애한다는 게 그당시엔 이해가 되지 않았다.

옛날 JDBC 이야기도 눈살을 찌푸렸다. JDBC탬플릿도 잘 안쓰다 보니 옛날 서블릿 쓰던 시절 DB Contection을 건드릴 때 Dao라는 DB접근 클래스에 이렇게 추상화 기술을 쓰면 이래서 좋다! 이래서 개발자가 편하다! 하는 얘기가 그 때 당시에는 공감이 잘 안가서 그랬을 거다.

그당시엔 내 상황이 어땠냐면, 바로바로 기술을 접목시켜야 했던 프로젝트 진행시기인지라 책을 고를 때도 바로 접목시켜서 적용할 코드가 있는지 없는지가 중요했다.
사실 지금에서야 보면 이 책이 썩 좋아 보이지 않았다.

하지만 시간이 지나서 스프링의 기초가 서지 않는 다는 느낌이 계속 받으면서 내심 한번은 저 책의 근본적인 기술의 깊이를 머리로 채워야겠다고 다짐?을 한적이 있었다. 언젠간 읽어야 겠다는 각오는 시간이 좀체 나지 않았다.

이제야 취준생 신분으로 다시 돌아오고 이 책을 한번 정복할 시간이 없다는 핑계는 없어졌다.

일단 시작은 중간중간 써봤던 부분부터 스키밍을 하면서 보게 되었다.

DI(의존관계 주입),
오브젝트 팩토리,
Autowired,
Transaction,
JUnit ...

같은 것들에서 글들을 계속 읽어봤다. 알던 부분들이니까 말이다.

이외로 생각보다 너무 좋았다. 확실히 그 인상이 안좋았던 당시에는 옛날 기술만 보는 것과 동시에 오래된 래거시한 code들만 보여서 싫증을 느꼈는데 기술의 깊이를 이해하고자 하는 갈증에 있던 나에게 insight를 많이 준 것 같다.

스프링이 그옛날 Java EE의 지금에서는 당연한 추상화 기술들을 쓰지 않고 한땀한땀 구현체랑 같이 설정하는 것에서 로드 존슨이 이 아니다 싶어서 만든 프레임워크 라는 것부터 시작하는 history의 입담이 참 재밌게 느껴졌다.

개념적으로 갑자기 연결되는 부분들이 많았다. 실제 개발을 할 때 내가 이게 제대로 설정하고 한건가? 하는 의문점이 많이 들때가 많았다. 그 의문점들 target 삼아서 이 책을 본다면 생각보다 몰랐던 점들이 많이 보일 것이다. 이 책은 그런 책이다.

그리고 책 전반에 걸쳐 저자가 스프링에 대한 애정이 남달라 보인 게 보였다.
정리하면, 스프링은 이런 목적으로 만들어진 것이다라고 말한다.

객체지향설계(OOP)
리팩토링
테스트주도개발(TDD)

그전에 읽었던 로버트 C.마틴의 <클린코드>, <클린 아키텍쳐>의 얘기들이 많이 녹아져 있는 게 보였다. 이게 스프링이라는 프레임워크가 목적하는 바와 너무나 닮아 있다는 게 신기했다.

늘 느끼지만 소프트웨어의 좋은 책들은 테스트에 대한 중요성을 빠트리지 않고 있다.

지금 개인 프로젝트를 준비하면서 테스트가 정말 안돌아간다. 이럴 때 이 책을 읽고 다시 Testcode에 심열을 더 기울이자는 다짐을 다시 한번 해본다.


이 책을 추천하는 사람
스프링 프레임워크를 얇게 배워 기술의 깊이에 목마른 사람

이 책을 추천하지 않는 사람
일단 스프링을 처음 접하는 사람

이 사람들한테는 개인적으로 추천하는 책은 <스프링 입문을 위한 자바 객체 지향의 원리와 이해> 책을 더 추천한다.



책 : <토비의 스프링 3.1 vol1> 이일민

profile
배운 것을 기록합니다.
post-custom-banner

0개의 댓글