관리 메뉴

기억을 위한 기록들

<소프트웨어 아키텍쳐 - The Hard Parts > 리뷰 본문

이런저런 책들

<소프트웨어 아키텍쳐 - The Hard Parts > 리뷰

에드윈H 2023. 3. 20. 00:06

 이 책은 "소프트웨어 아키텍처 101"의 실무급 후속작이라고 한다.

http://www.yes24.com/Product/Goods/104491433

 

소프트웨어 아키텍처 101 - YES24

막막했던 아키텍처가 쉬워지는 실무 지침서소프트웨어 아키텍트는 전 세계 연봉 10위 안에 드는 직업이지만, 지금까지 ‘개발자가 아키텍트’로 전향하는 데 실질적으로 도움이 될 만한 지침이

www.yes24.com

 

사실 난 해당 책을 먼저 선행으로 보지 못했지만 읽어보고 싶긴 했다. 그만큼 해당 책이 좀 더 난이도까진 아닌데, 순차적으로 읽어보면 좋을 듯싶다.

 

책에서 많이 쓰는 단어로 '트레이드오프 분석'이라는 단어를 쓰는데 해당 뜻은

 

 

트레이드오프(trade-off, tradeoff) 또는 상충 관계는 다른 측면에서 이득을 얻으면서 집합 또는 디자인의 품질, 양, 속성을 없애거나 잃어버리는 일이 수반되는 상황적 결정이다. 즉, 하나가 증가하면 다른 하나는 무조건 감소한다는 것을 뜻한다. 트레이드오프는 예를 들어 단순 물리학을 포함하여, 예를 들면 특정한 양의 물체가 주어진 공간에 맞을 수 있기 때문에 무언가를 추가로 받아들이려면 전체 용기에서 일부 물건을 제해야 한다는 등 수많은 기원의 제한에서 비롯된다.

출처 : https://ko.wikipedia.org/wiki/%ED%8A%B8%EB%A0%88%EC%9D%B4%EB%93%9C%EC%98%A4%ED%94%84

라고 하는데, 개발에서 트레이드 오프란 2가지로 생각되는데 한 가지는 개발과정에서 이루어지는 개발 비용적인 측면으로 예를 들어 개발시간을 늘려서 품질이 올라갈 수도 있겠지만, 그만큼 개발비용이 올라가기도 하며, 개발시간을 줄이기 위해 제품 완성도를 조금이라도 줄여 개발비용을 줄여진다라던가

두 번째로 이런 개발비용 말고도, 어떤 아키텍처를 구성하는 데에 있어서 예를 들면, 어떤 기능을 사용하면 품질이 올라가지만 메모리는 많이 잡아먹지만, 반대로 어떤 기능을 사용하지 않으면 품질이 떨어지고 메모리 사용량이 줄어드는 점에 있어서 절충과정을 잘 선택해야 하겠다.

"나쁜 것 중에서 제일 나은(least worst) 트레이드오프 조합을 찾으세요"라고 말해주고 있다.

 

 

이 책의 특이 한 점(?) 가상의 한빛전자라는 회사에서 가상의 회사원들이 일상적인 대화를 하며 기술 토크를 자연스럽게 하며 해당 파트에 대한 주제를 이어서 얘기해주고 있다.

 

 

 이 책이 왜 하드파트라는 부제를 붙였는가에 대한 대답을 해주고 있다.

 

 

나는 솔직히 선행 책인 "소프트웨어 아키텍처 101"을 읽지 않아서 해당 책을 자세히 읽어보진 못했다.

소프트웨어 아키텍처에 관심이 있다면 이전 버전인 소프트웨어 아키텍처 101을 선행으로 읽고 다음으로 읽으면 좋을 것 같다.

http://www.yes24.com/Product/Goods/104491433

 

소프트웨어 아키텍처 101 - YES24

막막했던 아키텍처가 쉬워지는 실무 지침서소프트웨어 아키텍트는 전 세계 연봉 10위 안에 드는 직업이지만, 지금까지 ‘개발자가 아키텍트’로 전향하는 데 실질적으로 도움이 될 만한 지침이

www.yes24.com

 

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."