7가지 동시성 모델 - 폴 부처 지음, 임백준 옮김/한빛미디어 |
'행복한 프로그래밍'등 프로그래머 에세이의 저자이자, 'art of readable code' 등의 번역자이자,
2012/12/25 - [서평] - '리펙토링'보다 쉽게 리펙토링하기
'나는 프로그래머다' 팟캐스트의 진행자이기도 한, 인기 개발자겸 칼럼니스트 임백준씨의 최근 번역서이다.
최근에는 '폴리글랏'이란 개념으로 다양한 개발언어를 숙지하고 사용하는 것이 경쟁력이라는 주장을 이어오고 있는데, 비슷한 내용을 책이 번역되어 읽어 보았다.
개발자에게 동시성 문제란 어느 정도 규모가 있는 프로그램을 작성하고 유지하기 위해 반드시 넘어야 될 산 같은 이슈다. 하물며 커널은 선점과 스케쥴이 가장 중요한 핵심 기반이며 최근에는 멀티 코어를 이용한 개발이 주를 이루고 있어 시스템/임베디드 개발자에게는 뗄수 없는 주제이기도 하다.
이 책은 이러한 동시성 문제를 해결하기 위한 7가지 프로그래밍 모델을 제시하고 있다.
가장 원시적(?)이고 단순한 '스레드와 락'부터 '함수형 프로그래밍'과 '클로저', '엑터', 'CSP', '데이터 병렬성' 및 '람다 아키텍처'에 이르기까지 다양한 언어가 동시성 문제를 다루기 위해 취하고 있는 모델링 방식을 설명한다.
이전까지 접하지 못했던 생소한 언어를 이용한 접근도 있기 때문에 어려운 부분도 있지만, 지적 욕구를 자극하는 좋은 책이자, 한 가지 문제를 푸는 다양한 방식을 소개함으로써 문제 해결 능령 향상에 도움을 주는 (적어도 좋은 자극제가 되는) 책이라고 할 수 있다.
시리즈물(?)이라고 해야 하나, '브루스 테이트의 세븐 랭귀지' (같은 번역자가 소개) 에서 영감을 얻어 7가지 기술과 7주의 학습 기간을 따랐다고 하는데, 반드시 7개를 다 공부해야 하거나 7주간의 시간을 투입해야 하는 것은 아니라는 것도 밝혀 둔다.
'서평' 카테고리의 다른 글
아주 큰 스케치북: 오리기+찢기 (0) | 2017.11.24 |
---|---|
코딩의 기술 (2) | 2017.10.31 |
[나는 리뷰어다] 또다른 '슈돌' - 아빠육아 (0) | 2017.08.14 |
[나는 리뷰어다] 마인크래프트 슈퍼 건축 레시피 (0) | 2017.08.14 |
[나는 리뷰어다] 여행기인줄 알았는데, 치유기 - '안녕 엄마, 안녕 유럽' (0) | 2017.08.08 |