Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

[Book] 자바 개발자를 위한 함수형 프로그래밍

자바 개발자를 위한 함수형 프로그래밍

자바 개발자를 위한 함수형 프로그래밍 - 6점
딘 왐플러 지음
임백준 옮김
한빛미디어

이 책은 한빛미디어에서 리얼타임이라는 이름으로 기술서적을 이북으로만 출판하는 서비스로 나온 책으로 Functional Programming for Java Developers의 번역서이다. 개인적으로는 페이퍼북으로 나오는 책에 비해 상당히 빠른 속도로 번역서가 나오고 있고 이북으로 기술서적을 보기 어려운 국내환경에서 볼만한 서적들이 이북으로 나오고 있기 때문에 최근에 맘에 들어하고 있다.

제목 그래로 자바의 관점(?)에서 함수형 프로그래밍을 설명해 주는 책이다. 이 책의 저지인 딘 왐플러는 오렐리의 Programming Scala의 저자이기도 한데 그래서 인지 몰라도 이 책을 다보고난 느낌은 스칼라의 내부 구현에 대한 접근방법에 대한 설명을 하는 듯한 느낌이었다. 스칼라의 내부 구현을 다 보여준다는 의미가 아니라 스칼라가 함수형 프로그래밍에 접근하고 있는 방법에 대해서 자바코드로 간략하게 보여주는 듯한 느낌이 있다. 자바 개발자들에게도 도움이 되겠지만 스칼라를 공부할 예정이라면 기반지식정도로 한번 보면 도움이 되리라 생각한다.

함수형 프로그래밍 언어는 객체지향 프로그래밍 언어를 대체하는 존재가 아니라, 객체지향 프로그래밍 언어의 외연을 확장하고 내연을 풍부하게 만들어 주는 도우미다.
함수형 프로그래밍은 개발자로써 배워둘 가치가 충분히 있다고 생각하는데 이는 기존의 임퍼러티브(Imperative) 프로그래밍에 비해서 함수형 프로그래밍은 접근방법이 완전히 다르기 때문에 코딩을 하는 좀더 넓은 시야를 준다고 보기 때문이다. 물론 이 100페이지정도의 책으로 함수형 프로그래밍의 개념을 다 이해하는 건 무리겠지만 기본적인 내용 정도는 이해할 수 있다고 생각한다. 개인적으로 번역은 약간 거친 느낌이 나지만 내용을 이해하는데는 무리가 없어 보인다.(Gang of four를 유명한 네명의 사람들이라고 한건 그냥 gang of four로 해도 괜찮지 않았나 싶기도... 중요한 건 아니지만...)

초반에는 함수형 프로그래밍에 대한 광고를 좀 하고 함수형 프로그래밍이 가진 특징들을 설명해 준다. 이어서 함수형 프로그래밍이 데이터 구조에 대해서 접근하는 방법을 설명하기 위해서 리스트와 맵에 대해서 설명하고 액터모델도 살짝 나온다. 데이터 구조에 대해서는 map, filter, fold를 자바코드로 구현하는 방법을 설명하고 이 세 함수를 조합해서 사용하는 방법을 보여주는데 이 책에서는 가장 알찬 부분이 아닌가 생각한다. 앞에서 말했듯이 100페이지밖에 안되므로 부담없이 읽을 수 있다.
2012/11/19 02:24 2012/11/19 02:24