이 포스트는 제이펍에서 출간한 '쏙쏙 들어오는 함수형 코딩(Grokking Simplicity)'을 읽고 작성한 서평입니다.
INTRO
혼자 공부를 하면서 가장 어려운 부분은 내가 작성한 코드의 객관적인 평가를 받는 부분입니다. 최근에는 개발자 커뮤니티나 github 같은 환경들을 이용해 일부 자신의 코드를 평가받고 개선하고 있으나, 내가 작성한 코드가 평가를 받기 위한 최소한의 자격은 갖췄는지 의구심은 쉽게 해결되지 않습니다.
해당 도서에서는 이런 분들을 위해
도서 소개
이 책은 함수형 사고를 통해 의도하지 않은 복잡성이 코드 전체로 퍼져나가는 것을 막고 프로그래밍을 간단하게 하는 법을 담았다. 시스템의 상태를 바꾸는 액션과 그렇지 않은 계산을 구분하는 법을 익히고, 액션을 계산으로 리팩터링하여 단순한 소프트웨어로 만드는 방법을 배운다. 또한, 비동기와 멀티스레드를 사용할 때 발생하는 시간에 관한 문제를 해결하는 방법을 알려준다. 반복적인 코드를 없애고 표현력을 높이는 방법도 알 수 있다. 더 좋은 소프트웨어를 만드는 데 많은 영감을 줄 것이다.
대상 독자
- 2~5년 정도 소프트웨어 개발 경험이 있는 현업 종사자
- 간단한 시스템을 만들고 있지만 큰 시스템을 다루는 것에 어려움을 느끼는 개발자
목차
- 쏙쏙 들어오는 함수형 코딩에 오신 것을 환영합니다
- 현실에서의 함수형 사고
- 액션과 계산, 데이터의 차이를 알기
- 액션에서 계산 빼내기
- 더 좋은 액션 만들기
- 변경 가능한 데이터 구조를 가진 언어에서 불변성 유지하기
- 신뢰할 수 없는 코드를 쓰면서 불변성 지키기
- 계층형 설계 I
- 계층형 설계 II
- 일급 함수 I
- 일급 함수 II
- 함수형 반복
- 함수형 도구 체이닝
- 중첩된 데이터에 함수형 도구 사용하기
- 타임라인 격리하기
- 타임라인 사이에 자원 공유하기
- 타임라인 조율하기
- 반응형 아키텍처와 어니언 아키텍처
- 함수형 프로그래밍 여행에 앞서
책을 읽고
▶ 주관적인 평점 : 4.0점 / 5.0점
해당 도서의 대상 독자는 프로그래밍에 대한 이해가 있는 소프트웨어 개발자이며, 자바스크립트(javascript) 언어로 코드가 설명되어 있어 최소한의 프로그래밍 언어 한 종류에 대한 이해가 있어야 합니다.
저의 경우, R과 Python을 주로 다루면서 타 언어도 기본 지식 및 경험은 있었기에 크게 어렵지 않게 학습할 수 있었으나, 가끔 자바스크립트(javascript) 언어에 강한 종속성이 있는 함수들은 한번 더 검색해 가며 이해할 수 있었습니다.
개인적인 생각으로는 분석가보다 개발자분들에게 더 적합한 책이며, 특히
관련 링크
[1] 출판사 도서 소개 - 쏙쏙 들어오는 함수형 코딩
[2] 예제 Code - manning
[3] 원서 홈페이지