이펙티브 소프트웨어 아키텍처 - 더 나은, 더 빠른 소프트웨어를 구축하기 위한 소프트웨어 아키텍처 필수 가이드
올리버 골드만 지음, 최희철 옮김 / 길벗 / 2025년 3월
평점 :
장바구니담기




소프트웨어 아키텍처가 단순한 설계 도면이 아니라, 복잡성이 폭발적으로 증가한 현대 소프트웨어 환경에서 필수적인 생존 도구로 자리 잡고 있습니다. 20년 전만 해도 플로피 디스크 한 장에 담길 수 있었던 소프트웨어가 오늘날에는 수백 개의 프로그램이 전 세계 여러 위치에서 동시에 실행됩니다. 


또한 다양한 앱들은 수시로 업데이트되며, 영구적으로 동작해야 하는 거대한 시스템으로 진화했습니다. 이러한 변화 속에서 아키텍처는 점점 더 어렵고, 동시에 더 중요해졌습니다. 제대로 관리하지 않으면 복잡성은 시스템의 신뢰성과 개발 속도를 결정적으로 저해하는 요인이 되기 때문이죠. 이 문제점을 제대로 진단한 책이 나왔습니다. 이펙티브 소프트웨어 아키텍처 책에 대해 자세히 알아보도록 하겠습니다.





소프트웨어 아키텍처를 단순한 기술적 구조 설계가 아닙니다. 조직이 더 나은 소프트웨어를 더 빠르게 개발할 수 있도록 돕는 핵심 기능으로 볼 수 있습니다. 이때 아키텍처의 품질은 소프트웨어 시스템의 성공과 실패를 좌우하며, 좋은 아키텍처는 시스템이 오랜 시간 안정적으로 동작하게 합니다. 반면, 부실한 아키텍처는 시스템에 문제가 발생 할 수 있죠. ​ 아키텍트는 요구사항을 통합적으로 파악하고, 시스템 전체가 유기적으로 작동하도록 설계하며, 이를 팀원들과 효과적으로 소통하는 역할을 맡습니는다. 이는 단순한 기술적 역량을 넘어 변화에 유연하게 대처하고, 반복 가능하며 예측 가능한 프로세스를 구축하는 능력을 필요로 합니다.





이펙티브 소프트웨어 아키텍처 책은 소프트웨어 아키텍처가 단순히 초기 설계에만 머무르지 않고, 시스템의 진화와 변화 관리에 핵심적인 역할을 해야 한다고 강조한다. 설계와 아키텍처의 경계, 점진적 개선, 병렬 작업, 플랫폼과의 조합 등 실질적인 설계 원칙을 구체적으로 설명해줍니다. 이를 통해 아키텍처가 시스템의 장기적인 확장성과 유지보수성을 보장하는 기반임을 알 수 있습니다. ​ 또한 아키텍처의 성공을 위해 효과적인 커뮤니케이션과 정보 구조화가 필수적임을 강조합니다. 명확한 네이밍, 사전 구축, 듣기와 쓰기 능력, 정보 아키텍처 등 다양한 커뮤니케이션 스킬과 도구를 실제 사례와 함께 알려줍니다. 이를 통해 아키텍처가 단순히 설계도에 머무르지 않고, 팀 전체가 같은 목표와 이해를 공유하도록 만드는 데 핵심적인 역할을 한다는 점을 알 수 있습니다.


이 포스팅은 길벗에서 책을 받아 읽고 주관적으로 작성 했습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
삶의 실력, 장자 - 내면의 두께를 갖춘 자유로운 생산자
최진석 지음 / 위즈덤하우스 / 2025년 3월
평점 :
장바구니담기




국내에서 동양 철학가로 인지도 높은 분은 공자, 맹자, 노자 그리고 장자가 있습니다. 이러한 인물들은 우열을 가리기는 어렵습니다. 고민하던 중 작년에 읽은 허송세월이 떠올랐습니다. 김훈 작가님이 장자의 관련된 책을 흥미롭게 읽은 대목이 있어서 관련된 책을 찾다가 마땅히 읽을 책이 없었습니다. ​ 그런데 말입니다. 


동양철학의 대가인 최진석 동국대 명예교수님께서 <삶의 실력, 장자> 책을 출간하셨습니다. 이 소식을 듣고 안 읽어 볼 수 없는 이유가 생기게 된 것이죠. 장자의 철학의 매력은 시간적 관념이 다뤄집니다. 이러한 점은 기라는 범주에 속합니다. 기는 노자와 공자의 책에도 나오긴 하지만 핵심적으로 다루진 않기 때문에 더 흥미롭게 봤습니다. 그럼 책에 대해서 자세히 알아보도록 하겠습니다.




1) 장자 소요유

소요유는 눈을 똑바로 뜨고 목적지를 향해서 곧장 걷는게 아니라, 어디로 가는지 모르게 왔다 갔다 하면서 아무 목적지도 없는 것 처럼 노는 것이 핵심이라고 최진석 교수님이 <삶의 실력, 장자 책>을 통해 알려줍니다. 즉 사람이 시간이 빨리 갈 때 느끼는 점은 무엇이가 흥미를 가지고 놀 때라는 점입니다. ​ 또한 장자 사상은 스케일이 남 다릅니다. 소요유의 제일 앞 부분에서 일반적인 상상으로는 그릴 수도 없는 거대한 스케일을 뽑냅니다. 황화의 신과 바다의 신과 대비하고, 매미와 대붕을 대비하고 백 리 길 소풍을 떠나는 사람과 천 리 길 소풍을 떠나는 사람을 대비하고 700살다 간 팽조와 8000년을 살다간 대춘을 대비합니다. 이를 통해 자잘한 사람이 아니라 크고 굵은 사람이 되어야 한다는 뜻을 알 수 있습니다.




2) 제물론 

삶의 실력, 장자 책 등을 단순히 읽기만 해서 자신에게 어떠한 변화도 일어나지 않을 수 있습니다. 책을 통해 읽은 글은 단순히 지식 수준에 머물게 되는 점인데요. 이 문제점을 해결하는 방법은 간단하지만 실천하기는 상당히 어렵습니다. 바로 자기가 무엇을 원하는 사람인지를 자신이 아는 것입니다. 책을 통해서 장자에 대해선 누구보다 잘 알지만 읽은 자신에 대해서 고찰도 필요하다는 뜻이죠. ​ 이걸 최진성 교수님은 자기 각성이라고 표현합니다. 


자기 각성 하기 전에는 자신의 정해진 마음에 의해 세계의 좁은 부분을 전체로 착각하거나 있는 것을 없다고 하거나 파란 것을 붉은 것으로 착각 할 수 있기 때문입니다. 이 착각에서 삶의 온갖 비효율과 어깃장이 나오게 되고 그래서 행복하지도 자유롭지도 않게 된다고 합니다.


이 포스팅은 위즈덤하우스에 책을 받아 읽고 주관적으로 작성했습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
나 홀로 돈 되는 책 만들기 - 1인출판.독립출판.자가출판 성공필독서
본조박 지음 / 읽고싶은책 / 2025년 3월
평점 :
장바구니담기


매년 출판사의 수는 늘어나고 있습니다. 그중 1인으로 출판시장의 문을 두드리거나 독립 출판 역시 늘어나는 추세죠. 이러한 점은 기존의 대형 서점이 기획하지 못한 시장을 찾아서 성공하는 사례도 보입니다. 반면 무턱대고 책 만들기에 대해 배경지식이 없이 시장하다 보면 시간만 지날지 모릅니다. ​ 이러한 점을 보완 해줄 책이 나왔습니다. 


<나 홀로 돈 되는 책 만들기> 책은 20년 이상 출판업에서 일을 하신 본조박 작가님께서 썼습니다. 책에 대한 계획부터, 만들기, 마케팅, 배포 그리고 출판의 미래에 자세히 적어져 있습니다. 자세한 내용을 알아보도록 하겠습니다




1) 책 원고 및 디자인

보통 책을 쓰는 작가님들이 하는 일은 목차를 쓰고 출판사에 투고하거나 유명한 작가님은 출판사에서 기획 원고를 제안받는 경우가 많습니다. 반면 독립 출판은 사뭇 다릅니다. 독립 출판하는 법은 자신이 쓰고 싶은 책을 제작부터 유통, 홍보까지의 전 과정을 체계적으로 관리해야 합니다. 그리고 벌어들이는 수익 또한 온전히 출판사 것이죠. ​ 


이 책은 원고 작성에서 아이디어를 구체화하고 집필 일정 관리를 수립하는 방법을 알려줍니다. 누군가 압박해 주는 구조가 아닌 자신이 모든 것을 책임을 지는 구조이기 때문에 집중할 수 있는 기간을 설정해서 일정 관리하는 것이 중요합니다. 또한 책 디자인은 표지, 내지 등 기본적으로 알아야 하는 부분에 대해서 정리돼 있습니다.




2) 책 인쇄 및 유통

책의 원고와 디자인이 다 되면 제작과 배포의 대한 고민으로 하게 됩니다. 독립 출판 책 인쇄는 제본 방식을 결정하고 인쇄소에서 견적을 받아 진행합니다. 수요 조사가 어느 정도 됐다면 그 수에 맞춰서 하거나 소량 찍고 시장 분위기를 보는 경우도 있습니다. 독립 출판 유통은 서점에 입고 신청서를 보내고 직접 납품하는 경우도 있습니다. 대형 서점의 유통은 ISBN을 발급받고 교보문고, 알라딘 등에 계약을 통해서 진행합니다. ​ 


이 책은 SNS를 통해 책을 브랜드화해서 홍보하는 것을 추천하는데요. 책을 쓰면서 있었던 이야기를 꾸준히 SNS에 올리는 방법을 알려줍니다.



이 포스팅은 읽고싶은 책 출판사에서 책을 받아 읽고 주관적으로 작성했습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
패턴으로 익히고 설계로 완성하는 리액트 - TDD와 리팩터링으로 만드는 효율적이고 유지보수 가능한 클린 코드
준타오 추 지음, 정재명 옮김 / 한빛미디어 / 2025년 2월
평점 :
장바구니담기


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





어느 정도 규모 있는 회사는 협업 도구로 Jira를 많이 사용합니다. Jira는 Atlassian이 개발한 이슈 추적 및 프로젝트 관리 소프트웨어입니다. 쉽게 설명하면은 일정 관리 프로그램으로 웹을 통해서 개발자뿐만 아니라 다양한 직군에서 함께 씁니다. 대체제로는 가볍게 Github Issues를 쓰기도 합니다. 하지만 한계는 분명하죠. 더불어 Trello는 칸반 보드 기반으로 많은 기업에서 사용하다가 아틀라시안이 인수한 바 있습니다. ​ 


대부분 지라 외의 대체제는 사용하는 경우가 드뭅니다. 이러한 가운데 Atlassian 개발자인 준타오 추가 패턴으로 익히고 설계로 완성하는 리액트 책이 나왔습니다. 이 책은 저자가 Atlassian Design System의 컴포넌트에 몰두 중 동료들과 디자인 패턴에 대해 고민한 흔적이 묻어 나온 책입니다. 그럼 자세히 알아보도록 하겠습니다.



1) 리액트 안티패턴 찾기

불과 10년 전만 하더라도 프런트엔드 개발이 까다롭거나 어렵게 받아드리지는 않았습니다. 당시 HTML, CSS, JavaScript가 주요 도구였으며, jQuery가 DOM 조작과 브라우저로 충분했습니다. 하지만 현재는 상황이 다르죠. 사용자가 기술에 대한 이해도가 높아져 요구사항 또한 늘어나게 됩니다. 자연스럽게 프런트엔드 개발자는 많이 필요하게 되면서 규모가 커지면 커질수록 복잡성이 배로 증가하게 됩니다. ​ 


이에 따라 새로운 기능을 추가하는데 생각보다 많은 시간이 필요하게 되고 결함을 찾아 수정하는 것도 쉽지 않게 됩니다. 이 책은 문제의 원인을 안티패턴이라고 바라봅니다. 책에서 말한 안티패턴을 이해하고 개선된 방향으로 설계 원칙을 적용하면서 설계에 대한 이해도를 높이는 책입니다.




2) 3가지 원칙


책에서 말한 안티패턴은 명백한 기술적 오류는 아닙니다. 처음에는 코드가 문제가 없이 잘 동작합니다. 그러다 기능이 늘어날수록 문제를 일으킬 확률이 높아집니다. 즉 역할이 늘어날수록 불안정해지면서 수정하기 까다로운 부분일 수 있습니다. 이러한 점은 설계 부분에서 잘못된 확률이 높습니다. 이 책은 리액트 컴포넌트 설계에 대해서 3가지 원칙에 대해 알려줍니다. ​ 


가장 먼저 단일 책임원칙은 각각의 컴포넌트는 하나의 특정한 목적을 가져야 함을 강조하는 원칙입니다. 이 원칙을 지키면 컴포넌트를 읽기 편할 뿐만 아니라 테스트하고 유지 보수하기 쉽습니다. 두 번째는 중복 배제 원칙인데요. 중복을 최소화하고 재사용성을 높여줍니다. 마지막으로 컴포넌트 합성 원칙은 단순하고 재사용할 수 있는 컴포넌트를 조합하여 복잡함 UI를 구성하는 데 효율적으로 사용할 수 있습니다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
인터벌의 정석 - 고강도 인터벌 트레이닝의 과학
마틴 기발라 지음, 김노경 옮김 / 현익출판 / 2025년 2월
평점 :
장바구니담기


시간은 금이라고 말할 정도로 유한하며 사람마다 가치가 다릅니다. 멍하니 하루를 보내는 사람이 있으며, 일분일초라도 헛되게 보내지 않는 사람도 존재합니다. 운동 또한 마찬가지입니다. 같은 시간을 운동하더라도 개인마다의 조건과 방법이 다르면 결과 역시 달라지죠. 가장 관심 있는 운동 방법론은 고강도 인터벌 트레이닝입니다. ​ 


이에 대해 관련한 책을 찾던 중 캐나다 마틴 기발라 교수님의 책을 알게 됐습니다. 인터벌의 정석 책인데요. 교수님이 관련된 논문도 100편 이상을 쓰셔서 책의 내용이 상당히 기대됐습니다. 책의 내용을 자세히 알아보도록 하겠습니다.





1) 간격 훈련 뽀개기

인터벌 뜻은 문자 그대로 표현하면 간격입니다. 여기에 트레이닝이 붙으면 간격 훈련이겠죠. 폭발적인 고강도 운동과 중간중간 회복 시간을 결합한 것이라고 볼 수 있습니다. 앞서 말한 회복 시간은 완전한 휴식이 될 수 있지만 저강도 훈련으로 대체할 수 있습니다. 즉 일반적 지구력 훈련의 반대라는 것입니다. 


그럼, 지구력 훈련은 무엇이 있을까요? 보통 사람들은 러닝으로 바라봅니다. 또한 수영이나 자전거를 타는 것도 볼 수 있습니다. 마틴 기발라 교수는 인터벌 트레이닝 핵심은 운동 가도를 바꾸는 것이라고 알려줍니다. 힘들게 하다가 조금 쉬다가 다시 온 힘을 다하고 다시 긴장을 풀고 반복합니다. 강도가 높을수록 더 짧은 운동 시간으로 장시간 지구력 훈련을 한 것처럼 같은 효과를 얻을 수 있습니다.




2) 초보, 인터벌 러닝 시간

요즘은 날씨가 풀려서 길가나 방송을 통해서도 걷는 분들을 많이 볼 수 있습니다. 인터벌의 정석 책은 초보분들을 위해서 운동 방법을 자세히 알려줍니다. 제일 먼저 3분 동안 1의 강도로 걸으면서 워밍업을 합니다. 그리고 강도를 3으로 높입니다. 이때의 체감은 숨이 깊어지나 대화는 할 수 있는 정도를 말합니다. 이대로 3분 동안 유지합니다. 


그리고 강도를 2로 되돌려 3분간 유지합니다. 이러한 방법을 총 30분 동안 1~3단계를 반복하면 됩니다. 이때 가장 중요한 점은 처음부터 목표한 30분의 인터벌 러닝을 해내지 못해도 괜찮습니다. 절대 자책하지 말라고 교수님이 말해줍니다. 처음에는 할 수 있는 만큼만 반복해도 좋습니다.



이 포스팅은 현익출판사에서 책을 받아 주관적으로 작성했습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo