순수 함수?
: 함수형 프로그래밍 패러다임의 한부분
2가지 규칙

- 같은 입력값이 주어졌을 때, 언제나 같은 결괏값을 리턴

사용하는 이유?
- 클린 코드
- 쉬운 테스팅
- 쉬운 디버깅
- 독립적인 코드
외부에 선언된 상태를 수정하면 안됨


이렇게 하면 외부에 선언된 상태 또한 같이 변경된다


따라서 변경하고자 하는 변수를 매개변수로 넣어서 변경해줘야 외부 선언된 상태는 변경되지 않는다
장점
- 특정 함수가 다른 함수에 미치는 예기치 못한 영향 최소화
- 함수 생성 후 실행 시 어떤 결괏값을 리턴할지 예측 가능
=> 프로젝트 중 Impure 함수도 필요하지만 Pure 함수로 처리 가능한 부분은 최대한 적용해서 사용