강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

remember7448님의 프로필 이미지
remember7448

작성한 질문수

Swift로 함수형 프로그래밍 시작하기

Low-High (FP) -1

재귀함수~

작성

·

338

1

예제에서 while을 재귀함수로 변경하셨는데.. FP에서 재귀함수를 사용해야 하는 무엇인가가 있는건가요??

퀴즈

이 섹션에서 예제 프로그램들을 함수형 프로그래밍 스타일로 리팩토링하는 주된 목적은 무엇인가요?

새로운 프로그래밍 언어를 배우기 위해

Side Effect를 줄여 코드의 예측 가능성과 관리 용이성을 높이기 위해

프로그램 실행 속도를 극적으로 향상시키기 위해

비동기 작업을 처리하는 유일한 방법을 배우기 위해

답변 1

1

송치원님의 프로필 이미지
송치원
지식공유자

FP에서는 state를 갖지 않도록 프로그래밍 하기 위해 노력합니다.
일반적인 while이나 for 를 사용하면 값이 변하는 변수를 갖게 되고, 이 변수가 state 가 됩니다.
최대한 state가 없도록 하려는 방안중 하나로 재귀가 사용되는 것입니다.
state 없이 loop를 사용하는 방법중에 forEachmap 같은 것을 사용할 수도 있습니다.
while을 사용하더라도 state 없이 가능하다면 충분히 사용할 수 있습니다.
예제에서 재귀를 사용했던 것은 state 를 없애고 대신 함수의 입력값으로 처리할 수 있도록 변경하여기 위해서 재귀함수를 사용했던 것입니다.

remember7448님의 프로필 이미지
remember7448

작성한 질문수

질문하기