번역서 "유연한 소프트웨어를 만드는 설계 원칙" 출간 소식입니다.

Twitter icon류광, 2022-04-02 19:04
"Software Design for Flexibility"를 옮긴 번역서 "유연한 소프트웨어를 만드C++20: 풍부한 예제로 익히는 핵심 기능" 나왔습니다.

크리스 핸슨과 제럴드 제이 서스먼의 Software Design for Flexibility를 옮긴 "유연한 소프트웨어를 만드는 설계 원칙"이 며칠 전 출간되었습니다.

유연한 소프트웨어를 만드는 설계 원칙 앞 표지

얼마 전 근황 글에 한 독자분이 소프트웨어의 유연성에 관해 물으셨는데, 그에 대한 제 답변이 이 책을 소개하는 데에도 유용할 것 같아서 인용합니다.

(소프트웨어가 유연하다는 것은 무슨 뜻인가? 뭔가 수정이 용이한 것인가? 라는 질문에 대해:)

소프트웨어의 유연성이 무엇인가에 대해서는 여러 가지 의견이 있을 수 있는데요. 말씀하신 것처럼 수정이 용이한 것도 확실히 유연성이라고 생각합니다.

더 넓게 보면 유연성은 소프트웨어를 처음 만들 때 개발자가 의도했던 것 이상으로 소프트웨어를 활용할 수 있게 만드는 것이 얼마나 쉬운가의 문제인 것 같습니다. 그 방법 중 하나가 기존 코드를 수정하는 것이고, 기존 코드를 수정하기 쉽다면 유연한 소프트웨어라고 말할 수 있겠지요.

이 책은 거기서 더 나아가서, 기존 코드는 건드리지 않고 새로운 코드를 추가함으로써 소프트웨어가 새로운 환경과 용도에 적응하게 만드는 방법을 이야기합니다. 이를 저자들은 additive programming이라고 부르는데, 번역서에서는 이 용어를 "가산적 프로그래밍"이라고 옮기고 곁가지로 "첨가식 프로그래밍"도 제시했습니다.

아마도 궁극의 유연성은 소프트웨어가 스스로 학습하고 진화하는 것이겠지만, 그건 좀 무서운 생각도 듭니다:)

좀 더 본격적인 책 소개는 한빛미디어의 상세 페이지를 보시고요.

원서를 읽으면서 생각의 가지가 여기저기로 마구 뻗어나가서 흐름을 놓치곤 했는데, 사고의 폭이 넓어지고 안계가 트이는 느낌이어서 오히려 좋았습니다. 스스로도 번역이 썩 만족스럽지는 않지만, 아무쪼록 번역서도 그런 경험을 제공할 수 있으면 좋겠습니다.

질문이나 의견은 위의 책 표지를 클릭하면 나오는 페이지(book/SoftwareDesignForFlexibility)에서 해주시고요. 그 페이지에 예제 코드 실행과 관련한 정보도 있습니다.

태그: 번역서
comments powered by Disqus