whycr***
2022-03-31

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'개발자가 아키텍트\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'로 전향하는 데 실질적인 도움을 주는 실무 지침서다. 아키텍처 기초(패턴, 사고, 특성)와 아키텍처 스타일(레이어드, 파이프라인, 마이크로커널, 이벤트, 서비스, 오케스트레이션), 그
아키텍트 지망생을 위한 기본서가 한빛미디어에서 발간되었다. 바로 Fundamentals of Software Architecture, 소프트웨어 아키텍처 101 되시겠다.
총 세 개의 파트로 구성되어 있고 대략적인 흐름은 다음과 같다. 소프트웨어 아키텍처란 무엇인지 살펴보고 역사적인 트렌드를 알아본다. 아키텍처적인 사고와 모듈성에 대해 언급하며 응집 / 커플링 / 커네이선스처럼 아키텍처를 설계할 때 고려해야 하는 것을 설명한다. 요즘 아키텍처 관련된 책이나 글을 찾아보면 한 번씩은 모두 언급되는 용어들인데 이 책에 가득 정리되어 있다고 보면 된다.
아키텍처 스타일 파트에선 다양한 아키텍처 스타일을 다룬다. 레이어드 아키텍처 스타일(2 티어, 3 티어 아키텍처를 생각하면 된다), 파이프라인 아키텍처 스타일, 마이크로커널 아키텍처 스타일, 서비스 기반 아키텍처 스타일, 이벤트 기반 아키텍처 스타일, 공간 기반 아키텍처 스타일, 오케스트레이션 기반 서비스 지향 아키텍처 스타일, 마이크로서비스 아키텍처 스타일이 있다. 이름만 들어서는 생소한 것도 있을 수 있는데 현업에서 조금 굴러본 사람이라면 글을 읽는 순간 대충 머릿속에 그려질 것 같다. 한편, 아직 공부하는 학생이라면 조금 뜬구름 잡는 이야기처럼 들리거나 난해한 부분도 분명히 존재할 것 같다. 하지만 제목에 붙어있는 101을 생각하면 여러 개념을 쉽게 설명하기 위해 펼쳐놓은 느낌이기 때문에 잘 이해가 안 되는 부분이 있다면 각 잡고 여러 번 읽어보시길 권장한다. 마지막 파트인 테크닉과 소프트 스킬에서는 아키텍처를 결정하고 리스크를 분석하는 등 개발팀과 긴밀하게 일할 수 있는 소프트 스킬에 대해서도 함께 다룬다.
시중에 아키텍처를 다루는 책은 이미 여러 권 있다. 더 쉬운 책도 있을지도 모른다. 하지만 이 책만큼 폭넓게 여러 개념을 다루는 책은 흔하지 않다. 더욱이 시대적인 흐름에 따라 변화해온 아키텍처 스타일과 아키텍트로써 어떻게 성장할 수 있는지가 아주 잘 정리되어 있기 때문에 "아키텍처"를 공부하려고 마음먹었다면 이 책을 먼저 읽어보시길. 일독을 권한다.
한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.