아삭아삭 iOS 개발

[Swift 독학] 패스트캠퍼스 챌린지 37일차_고차함수 본문

Swift

[Swift 독학] 패스트캠퍼스 챌린지 37일차_고차함수

바닐라머스크 2022. 3. 1. 23:02

오늘은 스위프트에서 중요하고 강력한 특징 중 하나인 고차함수의 개념과 종류에 대해 간략히 정리해보겠습니다.

특별히 스위프트에서 함수는 일급객체이기 때문에 함수 자체를 전달인자로 전달하거나 그 결과값을 반환하는 것이 가능합니다.

 

아래 정리한 map, filter, reduce 세 종류의 고차함수 기능과 특징을 알아보고,

각각 상황에 적절한 함수를 사용해주는 것이 중요하겠습니다.

 

■ 고차함수(Higher Order Function)

  • 다른 함수를 전달 인자로 받거나 함수 실행의 결과를 함수로 반환하는 함수
  • swift의 함수는 일급 객체이기 때문에 함수의 전달 인자로 전달할 수 있고 함수의 결과값을 반환할 수도 있음
  • map, filter, reduce : 모두 콜렉션 타입에 구현이 되어 있음

 

■ 고차함수 종류

1) map

- 컨테이너 내부에 기존 데이터를 변형하여 새로운 컨테이너를 생성

- collection, sequence의 프로토콜을 따를 경우 사용 가능

  : array, optional, dictionary, set 등

- 기존에 있던 요소를 변경하여 그 값을 반환

 

2) filter
-
컨테이너 내부의 값을 걸러서 새로운 컨테이너로 추출함
-
클로저 표현 간소화 방법으로 작성되어 있음

- 특정한 기준에 맞추어 그에 맞는 값을 반환

 

3) reduce
-
컨테이너 내부의 요소를 하나로 통합시켜

 

 

 

 

본 게시물은 개인 공부 기록용이므로 내용에 오류가 있을 수 있습니다.

 fast campus강의  참조자료

[1] https://blog.yagom.net/565/

[2] https://bbiguduk.gitbook.io/swift/language-guide-1/closures

 

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.