더북(TheBook)

함수형 프로그래밍을 처음 접하는 개발자들에게 소개할 때 순수 함수형 언어는 교육상의 이유로 적합하지 않다. 새로운 언어를 먼저 배우고 유창해져야만 자신의 주 언어에 동일한 원칙을 적용할 수 있기 때문이다. 나도 새로운 언어를 배우는 것을 좋아하지만, 절차적 코드를 함수형 버전으로 변환하는 것이 더 효과적인 방법이라고 생각한다. 더 많은 것을 배우고 싶다면 순수 함수형 언어를 공부하거나 더 나아가 여러 가지 언어를 공부하는 것을 강력히 추천한다.

항상 완전히 함수형 패러다임을 사용하도록 강제하는 언어가 모든 문제에 최적의 해결책이라고 확신하지 않는다. 대부분의 일상적인 프로그래밍 작업에서는 혼합 패러다임 언어를 사용하는 것이 더 나은 현실적 선택이라고 믿는다.

그렇다면 많은 혼합 패러다임 언어 중에서 왜 코틀린(Kotlin)을 선택했는가? 세상에 완벽한 것은 없지만, 코틀린은 함수형 프로그래밍과 객체 지향 프로그래밍의 장점을 대부분 누릴 수 있는 ‘골디락스2 언어’라고 할 수 있다. 코틀린은 스칼라(Scala)나 클로저(Clojure)보다 학습 곡선이 더 완만하고 자바(Java) 라이브러리와 통합하기 더 쉽다. 또한 코틀린 타입 시스템은 자바 타입 시스템보다 함수형 프로그래밍에 더 친화적이며, 몇 가지 멋진 기능 덕분에 생산성이 매우 높아진다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.