책리뷰 함수형 사고-프로그래밍 패러다임 전환은 생각보다 어렵다.
created: 2018.03.21
-
함수형 언어를 사용해보기 전에(함수형 사고에 익숙해지기전에) 이 책을 봤을땐 내용을 거의 이해할 수 없었다. 자바 8스트림, 스칼라를 쓰면서 익숙해지고나니 내용이 이해되기 시작했다. 그래도 여전히 클로저 코드는 외계어 수준이다.
-
Groovy 예제가 상당히 많다. 테스트코드 짤 때만 써서 함수형 언어로 쓸 수 있는 부분은 잘 몰랐는데 이번 기회에 많이 알게 됐다. 그렇지만 API 이름이 기존 함수형 언어의 그것들과 달라서 좀 불편하다. 그래서 나는 스칼라를 더 선호한다.
-
복잡한 부분/움직이는 부분/상태를 최소화해서 코드 이해를 돕는다는 부분은 마음에 든다. 하지만 런타임이나 언어 기능으로 프로그래머가 제어해야했던 부분을 맡기는 것은 조금 불안하다. JAVA의 GC를 처음 본 C언어 개발자가 느꼈던 불안감과 비슷하지 않을까? 아마 미래에는 이런 것이 자연스러워질 것이다.
-
문제를 푸는 방식이 달라졌다. 대표적인 예로 나오는 리스트 순회나 함수를 파라미터로 넣어 동작을 파라미터화 하는 방법 등으로 명령형 프로그래밍보다 간결하게 문제를 풀 수 있게 됐다. 하지만 엔터프라이즈급 애플리케이션을 설계에서는 객체지향적 설계 방법이 가지는 지위가 워낙 견고해서 큰 그림을 그리는 방법은 크게 바뀌지 않을 것 같다.
책 제목에서 기대하는 것처럼 함수형 사고와 친해지기는 힘들었다. 기존 패러다임에 익숙하고, 실제로 코딩을 안해봐서 그런것 같다. 우리가 처음 코딩을 배울때처럼 한줄 씩 써보면서 익힌 후 다시 그 의미를 이해하는 용도로 이 책을 읽어보면 더 도움이 될 것 같다.