# 함수형 프로그래밍이란 무엇인가요?
This is a translation of 30-Seconds-of-knowledge's What is functional programming? (opens new window) in korean.
함수형 프로그래밍은 순수 함수를 사용해 상태 공유 및 데이터 변경을 피하고, 프로그램을 선언적인 방식으로 구축하는 패러다임이다. 같은 입력값에 대해서 항상 같은 값을 반환하고, side effect를 발생시키지 않는 것이 함수형 프로그래밍의 핵심이다. 많은 프로그래머들이 함수형 프로그래밍이 버그와 인지 부하를 줄이기 때문에 소프트웨어를 개발하기 위한 가장 좋은 방법으로 꼽는다.
# 알아두면 좋은 것
- 더 깨끗하고 간결한 개발 경험을 줌
- 함수 구성이 단순함
- 함수형 프로그래밍을 지원하는 JavaScript의 기능 (
.map
,.reduce
등) - JavaScript는 멀티 패러다임 프로그래밍 언어이다. (객체 지향 프로그래밍과 함수형 프로그래밍이 조화를 이루고 있음)