Kotlin in action
함수형 프로그래밍의 핵심개념
1. 일급시민 함수
- 함수를 일반 값처럼 다룰수있다
- 함수를 변수에 저장할 수 있다.
- 함수를 인자로 다른 함수에 전달할 수 있다.
- 함수에서 새로운 함수를 만들어서 반환할 수 있다.
2. 불변성
만들어 지고나면 내부 상대가 절대로 바뀌지 않는 불변객체를 사용해 프로그램을 작성한다.
3. 부수효과(side effect)없음
- 입력이 같으면 항상 같은 출력을 내놓고 다른 객체의 상태를 변경하지 않는다.
- 함수 외부나 다른 바깥 환경과 상호작용하지 않는 순수 함수를 사용한다.