AI Briefing

『스칼라로 배우는 함수형 프로그래밍』: 1편 - 순수 함수와 참조 투명성

·2024.11.01 09:00

스칼라를 활용한 함수형 프로그래밍의 핵심인 순수 함수와 참조 투명성의 개념을 설명한다.

함수형 프로그래밍의 핵심은 **계산(computation)**과 **액션(action)**을 분리하는 것이다. 단순히 값을 계산하는 과정과 콘솔 출력처럼 외부 상태를 변화시키는 액션을 구분함으로써 코드의 예측 가능성을 높일 수 있다.

**순수 함수(pure function)**는 수학적 함수와 같이 입력값에만 의존하여 결과를 반환하며, 외부 상태를 변경하는 **부수 효과(side effect)**를 일으키지 않는다. 예를 들어, 제곱 값을 계산하는 로직을 별도의 함수로 추출하면, 해당 함수는 오직 입력된 인자만을 사용하여 결과를 도출하는 순수 함수가 된다.

주요 개념은 다음과 같다:

  • 계산: 외부 상태에 의존하지 않고 입력값만을 바탕으로 결과를 반환함.
  • 부수 효과: 함수 실행 결과 외에 파일 시스템, 데이터베이스, 네트워크 입출력 등 외부 상태를 변경하는 행위.
  • 순수성: 계산만으로 이루어져 부수 효과가 없는 상태.
  • 참조 투명성: 동일한 입력에 대해 항상 동일한 결과를 내어, 해당 표현식을 결과값으로 대체해도 프로그램의 동작이 변하지 않는 성질.

이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.

요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.