TUTORIAL

함수형 프로그래밍 완벽 가이드

JavaScript 함수형 패러다임의 핵심 개념. 순수 함수, 불변성, 고차 함수를 실전 예제로 배웁니다.

럿지 AI 팀
2025-01-17
12
함수형 프로그래밍 핵심

순수 함수와 불변성을 기반으로
예측 가능하고 테스트하기 쉬운 코드를 작성합니다.

순수 함수

부수효과 없음

불변성

데이터 변경 금지

합성

함수 조합

순수 함수 vs 불순 함수

순수 함수

const add = (a, b) => a + b;
const double = (x) => x * 2;

불순 함수

let count = 0;
const increment = () => count++;

고차 함수

// map, filter, reduce
const numbers = [1, 2, 3, 4, 5];

const doubled = numbers.map(x => x * 2);
const evens = numbers.filter(x => x % 2 === 0);
const sum = numbers.reduce((acc, x) => acc + x, 0);

// 함수 합성
const compose = (...fns) => x =>
  fns.reduceRight((acc, fn) => fn(acc), x);

불변성 패턴

spread operator{ ...obj, key: value }
Object.assignObject.assign({}, obj)
Array methodsconcat, slice, map
Immerproduce(state, draft => ...)

FP 라이브러리

Ramda
Lodash/fp
Immutable.js
fp-ts
Sanctuary

관련 태그

#함수형프로그래밍
#JavaScript
#순수함수
#불변성
#FP