less than 1 minute read

사이드 이펙트

함수 외부의 어떤 것을 변경하게 되는 경우

함수형 프로그래밍의 컨셉 중에 하나는 함수를 호출하는 이유는 인풋에 따른 결과값을 얻어내기 위함

함수가 함수 외부의 값을 변경 시 함수가 의도하지 않은 동작을 할 수 있음

이런 함수가 늘어날 수록 디버깅하기 힘들어짐

방지하기 위해 바뀔 수 있는 변수는 매개변수로 받아야 함

순수함수는 모든 인풋과 아웃풋이 함수의 선언부에 들어나야 함