한 줄 요약 : 시스템 구조를 개선하고자 할 때 도움되는 이미지 트레이닝 도서
《소프트웨어 아키텍처 : The Hard Parts》는 신규 시스템의 구조(아키텍처)를 구상하거나, 기존 시스템의 구조를 개선하고자 할 때 참고하기 좋은 책이다. 책 제목에 'The Hard Parts'가 붙은 것을 보고 이미 눈치챘겠지만 《소프트웨어 아키텍처 : The Hard Parts》는 먼저 번역, 출간된 《소프트웨어 아키텍처 101》의 심화버전이다. '심화'라고 해서 더 어렵고, 복잡한 아키텍처를 다루는 것이 아니다.
《소프트웨어 아키텍처 101》에서는 아키텍처를 구성하는 아키텍트가 성장하기 위한 마음가짐, 방향성을 일러준다. 또한 현재 많이 접할 수 있는 아키텍처들을 소개하고 특징을 비교하는 형태로 구성되어 있다. 심화판인 《소프트웨어 아키텍처 101》는 새로운 서비스를 오픈하기 전 아키텍처를 설계한다거나, 기존 운영중인 서비스를 개선하는 상황 등 아키텍트가 되고 경력이 쌓였을 때 마주할 수 있는 상황을 해쳐나가기 위한 지식과, 경험을 담고 있다.
책은 크게 1. 분리하기, 2. 합치기 두 파트로 나뉜다. 같은 문제, 즉 같은 서비스라 하더라도 하나의 시스템을 작은 서비스 여러개로 분리해서 좋은 상황이 있고, 반대로 여러 서비스를 하나로 합치는 것이 좋은 상황이 있다. 경험을 쌓고 있는 독자라면 실제로 경험해보기 전에는 구분하기 어려울 것같다. 하지만 이 책은 상황극을 통해 사례의 당사자인 것처럼 내용을 풀어간다. 그리고 수식과 의사코드(pseudo code)가 있어 아키텍처를 좀 더 직관적으로 머리속에 그려 볼 수 있다.
책을 읽으며 《리팩터링 2판》과 구성이 비슷한 것 같다는 생각을 했다. 《리팩터링 2판》은 개선이 필요한 코드를 두고 무엇이 문제인지 설명 후 리팩터링 기법을 소개하고, 그 기법을 실제로 적용해보는 형태로 구성되어 있다. 《소프트웨어 아키텍처 : The Hard Parts》에서는 코드레벨에서 좀 더 깊은 차원으로 들어가 '아키텍처'에 대해 리팩터링을 하는 기분을 느낄 수 있었다.
함께 읽으면 좋은 책
《소프트웨어 아키텍처 101》, 《리팩터링 2판》
위 두 권은 따로 읽어도 좋은 책이지만 함께 읽어보면 시너지 효과가 날 것 같은 묶음이라 메모를 남겨본다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."
리뷰를 위해 한빛미디어에서 책을 제공받았지만 주관적인 생각을 그대로 적었습니다.
'Activity > 책 리뷰' 카테고리의 다른 글
[리뷰/책] 《핸즈온 데이터 시각화》 (1) | 2022.12.31 |
---|---|
[리뷰/책] (장고로 배우는) 파이썬 웹 프로그래밍 (0) | 2022.11.20 |
[리뷰/책]《네트워크 운용 및 유지 보수의 모든 것》 (0) | 2022.10.24 |
[리뷰/책] 《엑셀 바이블》 (1) | 2022.10.02 |
[리뷰/책] 좋은 코드, 나쁜 코드 (0) | 2022.09.07 |