@annyeong · 2024년 2월 9일 가입 · 4권 적독
함수형 개발자는 어떻게 생각하고 코드를 작성할까
함수형 프로그래밍은 절차적 프로그래밍, 객체 지향 프로그래밍과는 다른 새로운 방식의 프로그래밍이다. 따라서 함수형 프로그래밍을 배운다는 것은 새로운 방식으로 사고하는 방법을 배우는 것이다. 그렇다면 함수형 개발자는 어떤 방식으로 생각하고 소프트웨어를 만들까. 이 책은 함수형 프로그래밍의 가장 기본이 되는 부수 효과를 다루는 방법으로 시작한다. 먼저 부수 효과가 있는 함수인 액션과 부수 효과가 없는 계산을 구분하는 법을 배우고, 둘을 구분한 후에는 부수 효과가 있는 액션을 어떻게 하면 줄일 수 있을지, 액션을 계산으로 바꾸는 방법에는 어떤 기술이 있는지 이야기한다. 다음으로 일급 함수의 개념을 배우고 고차 함수를 사용하여 반복문을 줄이는 방법에 대해 설명한다. 이를 배우면 함수 단위의 코드를 재사용할 수 있고, 테스트하기 쉬워진다. 이러한 과정을 단계별로 설명하고 있어 이론으로 배운 내용을 어떻게 적용하는지 쉽게 이해하고 따라 할 수 있도록 하였다. 이 책에 사용된 예제 코드는 자바스크립트로 작성되었다. 자바스크립트는 완벽한 함수형 언어는 아니지만, 함수형 언어의 기능이 부족하므로 함수형 사고를 설명하기 좋은 언어다. 부족한 함수형 기능을 직접 만들어 보면서 함수형 개념을 보다 깊이 이해하도록 설명하고 있다. 이 책은 현실에 있을 법한 사례를 만들어 이야기를 이끌어 간다. 마치 회사의 개발팀이 된 것 같은 느낌으로 진행되어 재밌게 빠져들 수 있도록 구성되었다. 개발팀에 합류하여 함수형 개발자는 소프트웨어를 만들기 위해 어떤 사고를 하는지 옆에서 지켜볼 수 있다. 설령 함수형 언어를 사용하지 않거나 함수형 프로그래밍에 관심이 없더라도 함수형 사고를 배워둔다면 새로운 사고방식을 통해 문제해결력을 키울 수 있을 것이다. 함수형 프로그래밍을 배우고 싶은 독자는 물론이고, 프로그래밍을 조금 더 간결하고 깔끔하게 하고 싶은 모든 개발자에게 이 책을 소개한다.
대상 독자 ■ 2~5년 정도 소프트웨어 개발 경험이 있는 현업 종사자 ■ 간단한 시스템을 만들고 있지만 큰 시스템을 다루는 것에 어려움을 느끼는 개발자