함수형 프로그래밍

상현·2023년 1월 15일
0

cs스터디

목록 보기
6/28
post-thumbnail

정의

자료 처리를 수학적 함수의 계산으로 취급하고 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임의 하나


  • 부수 효과가 없는 순수 함수를 1급 객체로 간주하여 파라미터나 반환값으로 사용할 수 있으며, 참조 투명성을 지킬 수 있다.

    • 부수효과(Side-effect)

      • 객체의 필드값 설정
      • 변수의 값 변경
      • 예외나 오류 발생
      • 콘솔 또는 파일 input/output 발생

    • 순수함수는 부수효과가 없어서 Thread에 안정성을 보장받을 수 있음

      • 병렬처리 없이 동기화 가능

    • 1급 객체

      • 변수나 데이터 구조 안에 담을 수 있음
      • 파라미터로 전달 할 수 있음
      • 반환값으로 사용할 수 있음
      • 할당에 사용된 이름과 무관하게 고유한 구별이 가능함
    • 참조 투명성

      • 동일한 인자에 대해 항상 동일한 결과를 반환함
      • 기존의 값은 변경되지 않고 유지됨

0개의 댓글