Swift 언어
compactMap 직접 구현
Array를 확장해 표준 라이브러리의 compactMap과 같은 동작을 하는 myCompactMap을 직접 구현해 보세요. 제네릭 시그니처는 어떻게 잡겠습니까?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
Array를 확장해 표준 라이브러리의 compactMap과 같은 동작을 하는 myCompactMap을 직접 구현해 보세요. 제네릭 시그니처는 어떻게 잡겠습니까?
Array 확장에 제네릭 파라미터 T 하나만 선언하고, 요소를 받아 옵셔널 T?를 반환하는 클로저를 인자로 받아 [T]를 돌려주는 시그니처로 잡는다. 입력 타입은 Array의 Element가 이미 제공하므로 결과 타입만 제네릭이면 되고, 본문은 요소마다 클로저를 호출해 nil이면 제외하고 값만 append한다.
Swift 언어주관식기초
어떤 옵셔널이든 someOptional.isNil처럼 nil 여부를 물을 수 있게 Optional을 확장해 보세요. 어떻게 구현하겠습니까?
#extension #optional
Swift 언어주관식심화
물음표 옵셔널 문법도 표준 Optional도 없다고 가정해 봅시다. '값이 있거나 없거나'를 표현하는 타입을 Swift로 직접 설계한다면 어떻게 정의하겠습니까?
#generics #optional
Swift 언어객관식입문
다음 중 옵셔널을 안전하게 언래핑하는 방법을 모두 고르세요.
#optional
Swift 언어객관식딥다이브
다음 코드의 출력은? …
#extension