![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/I2Pax/btqFPGNJxrl/pzfxnMj4cYSkC4lFjuUg7K/img.png)
Opaque Types 불투명 타입 Opaque 반환 타입을 가진 함수, 메서드는 자신의 반환타입 정보를 외부에 숨길 수 있습니다. 일반적인 반환타입 처럼 명확한 반환 타입을 외부에 제공하는 대신 말이지요. // OpaqueType 사용 예시, 반환타입은 Shape 프로토콜을 채택한 어떠한 타입이던 될 수 있습니다. // -> 즉, 말 그대로 불투명한 타입(Opaque Type)입니다. func flip(_ shape: T) -> some Shape { return FlippedShape(shape: shape) } 반환타입을 숨기는 것은 모듈로 호출되는 코드와 모듈 사이에서 유용하게 사용되어질 수 있습니다.그 이유는 반환타입에 의존하는 타입은 private으로 유지될 수도 있기 때문입니다. 반환할때 일..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/DSq8F/btqFoRh8JE0/SQTuDOkrXln3WatWBvREk0/img.png)
Generic Functions 제네릭의 기능 제네릭(Generic) 기능은 어떠한 타입에서도 작동될 수 있습니다. 아래의 코드는 swapTwoValues(_:_:) 라는 다양한 타입을 수용할 수 있는 메서드입니다. 위의 swapTwoValues(_:_:) 메서드는 어떠한 타입이던 동일한 타입이기만 되는 두개의 인자를 받아서 값을 swap할 수 있습니다. 다양한 타입을 스왑하기 위해 다수의 메서드를 작성할 필요가 없게 되는 것입니다. 기존에 Int타입으로만 한정해서 받은 메서드, swapTwoIntValues(_:_:)메서드와 비교해서 몸체 내부의 구현 코드는 별다른 차이가 없습니다. 이제 두개의 메서드를 비교해 보도록 하겠습니다. 제네릭(Generic)을 사용한 메서드인 swapTwoValues(_:_..
- Total
- Today
- Yesterday
- publisher
- Collection
- 스위프트
- 알고리즘
- 부스트코스
- swift문제
- createML
- swift string
- Swift 알고리즘
- 알고리즘문제
- 개발자문서
- CoreML
- 프로그래머스
- uikit
- 백준알고리즘
- swift reduce
- 프로그래머스swift
- 프로토콜
- 자연어처리
- Protocol
- swift 문자열
- 컬렉션
- 백준swift
- 김프매매
- swift
- swift언어
- SwiftUI
- ios
- swift알고리즘
- swift 기초
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |