소프트웨어 아키텍처 101
잘 만들어진 상당히 큰 규모의 서비스를 접하게 되면 예전에는 어떤 언어로 어떻게 만들었을까 궁금했는데
이제는 각각의 서비스가 어떻게 상호 동작하는지, 어떤 패턴을 어떻게 응용했는지가 궁금하다.
사용자가 많은 시스템을 보면 대규모 트래픽을 어떻게 분산 처리 했는지, 시스템간 연동을 위해 데이터 연계는 어떤 방식을 썼는지 등이 궁금하다.
소프트웨어적인 스킬을 넘어 데이터베이스와 네트워크에 대해서도 상당한 지식을 보유하고 있어야 할 것이다.
그래서인지 책 서문에는 아래와 같은 내용이 있다.
"소프트웨어 아키텍트는 전문가로 간주되는 소프트웨어 개발자로서, 고수준의 설계를 결정하고 소프트웨어 코딩표준, 도구, 플랫폼 등의 기술 표준을 지시한다"
책의 머리말에 옮긴이가 위키백과에서 인용한 "소프트웨어 아키텍트"에 대한 설명이다.
하지만 어디서 부터 어디까지가 이키텍의 영역이고, 어떤 것이 아키텍트의 역활인지에 대해서는 아직도 명확하지는 않다.
그렇다면 개발을 오래 한 사람, 많이 개발해본 사람은 아키텍트가 될 수 있을까?
많은 경험은 분명 도움이 될 것이다.
하지만 이 책을 읽고 나면 어느 정도 아키텍트의 역활에 대해서는 감을 잡을 수 있을 거라고 생각된다.
이책은 크게 세개의 파트로 나뉘어 있다.
- Part1. 기초
- Part2. 아키텍처 스타일
- Part3. 테크닉과 소프트 스킬
"Part1. 기초" 앞에 소프트웨어 아키텍처에 대해 정의를 해보고 어떤 역활을 하는지에 대해 간략하게 짚고 넘어간다.
"Part1. 기초" 에서는 아키텍처와 설계를 구분하고, 최선의 아키텍처란 어떤 것인가에 대해 이야기 하고 있다.
"Part2. 아키텍처 스타일"에서는 여러가지 아키텍처 스타일에 대해서 다룬다.
"Part3. 테크닉과 소프트 스킬" 에서는 유능한 소프트웨어 아키텍트가 갖추어야 할 핵심 기술과 소프트스킬을 이야기 한다.
아키텍처에는 정답이 없다. 경험에 의한 최선의 방법을 찾을 뿐이다.
하지만 경험이 모자란다면 타인의 경험을 바탕으로 부족한 부분을 조금이나마 매울 수 있다.
이 책이 그러한 책이 되지 않을까 싶다.
저자 마크 리처즈와 닐 포드는 경험 많은 아키텍트 경력자 이다.
아키텍트를 목표로 하는 개발자라면 가볍게 한 번 읽어 보면 좋을거 같다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."
'블로그 > 도서' 카테고리의 다른 글
[도서] 기업을 성공으로 이끄는 Developer Relations (1) | 2022.06.25 |
---|---|
[도서] 헤드퍼스트 디자인패턴(개정판) (0) | 2022.04.24 |
[도서] 무던한 개발자를 위한 모던한 자바스크립트 (0) | 2022.02.21 |
[도서] 모던자바스크립트 핵심 가이드 (0) | 2021.12.26 |
[도서] 소프트웨어 스펙의 모든것 (0) | 2021.11.09 |