-
함수형 프로그래밍 입문Today I Learned 2021. 3. 22. 20:41
순수함수를 만들고, 순수함수를 조합하는 프로그래밍 패턴이 곧 함수형 프로그래밍. 함수형 프로그래밍이 지향하는 성공적인 프로그래밍은 부수 효과를 미워하고 조합성을 강조하는 것!
순수함수
- 동일한 인자를 주면 항상 동일한 결과를 리턴한다 (개발자가 평가시점을 다룰 수 있으므로 조합성을 높일 수 있다)
- 부수효과가 없다 (부수효과: 함수가 리턴값으로 결과를 만드는 것 외에 외부의 상태에 영향을 미치는 것)
=> 오류를 줄이고 안정성을 높일 수 있다
=> 모듈화 수준이 높다. 즉, 생산성을 높일 수 있다
let c = 10; function nonPureFunction(a, b) { c = a; return a + b; }
함수 nonPureFunction는 동일한 인자를 줬을 때 항상 동일한 결과를 리턴하지만, 함수 외부의 변수 c의 상태에 영향을 미치기 때문에 순수함수가 아니다.
일급함수
- 함수를 값으로 다룰 수 있다
- 인자로 함수를 넘길 수 있다
- 인자로 함수를 전달 받아서 실행할 수 있다
'Today I Learned' 카테고리의 다른 글
프로세스(Process)와 쓰레드(Thread) (0) 2021.03.10 WEB APIs (0) 2021.02.18 Redux (0) 2020.10.28 브라우저의 렌더링 과정 (0) 2020.10.21 리액트에서 여러 input 태그 다루기 (0) 2020.10.14