정상에서 IT를 외치다

함수형 프로그래밍 내용 요약 본문

개발

함수형 프로그래밍 내용 요약

Black-Jin 2021. 3. 23. 15:05
반응형

함수형 프로그래밍

1. 패러다임

- 선언형 프로그래밍: 어떻게(how)가 아닌 무엇(what)을 할 것인가를 생각하는 프로그래밍

 

2. 불변성

- 데이터 변경이 필요한 경우, 원본 데이터 구조를 변경하지 않고 복사본을 만들어 작업을 진행한다.

 

3. 참조 투명성

- 프로그램의 변경 없이도 어떤 표현식을 값으로 대체할 수 있어야 한다.

 

4. 순수함수

- 동일한 입력에는 항상 값은 값을 반환해야한다.

- side effect가 없어야 한다.

 

5. 고차함수와 1급 객체

1급 시민(First-Class citizen)

- 대상을 변수나 자료구조에 담을 수 있다.

- 대상을 함수의 매개변수로 넘길 수 있다.

 

여기서 대상을 객체로 바꾸면 일급 객체, 대상을 함수로 바꾸면 일급 함수라고 할 수 있습니다.

고차함수(High order function)

- 함수에 함수를 파라미터로 전달

- 함수의 반환값으로 함수를 사용

- 고차함수는 1급 객체의 부분 집합으로 볼 수 있다.

 

<참고링크>

함수형 프로그래밍 요약

함수형 프로그래밍에 관해

반응형

'개발' 카테고리의 다른 글

Synchronous, Asynchronous, Blocking, Non-Blocking  (0) 2021.01.19
[Layer Architecture] 레이어 아키텍처  (2) 2019.06.07
JAVA 에서의 정렬  (0) 2019.02.25
[Recursion] 재귀함수  (0) 2019.01.29
[Django] Cookiecutter 설치  (0) 2018.10.09
Comments