[swift] 제네릭 문법
제네릭은 스위프트에서 강력하고 유연한 타입 시스템을 만드는 데 사용되는 중요한 기능 중 하나입니다. 제네릭을 사용하면 다양한 타입에 대해 재사용 가능한 코드를 작성할 수 있습니다.
제네릭이란?
제네릭(Generic)은 일반적으로 형식 매개변수로 정의되는 타입 또는 함수를 뜻합니다. 이를 통해 코드를 작성할 때 실제로 사용될 타입을 지정하지 않고, 재사용 가능한 범용 코드를 작성할 수 있습니다.
제네릭을 사용하는 이유
제네릭을 사용하면 여러 가지 타입에 대해 동일한 코드를 사용할 수 있으므로 코드의 재사용성이 높아집니다. 또한, 컴파일러가 타입을 검증하므로 타입 안정성이 보장됩니다.
제네릭 문법
스위프트에서 제네릭은 <>
기호를 사용하여 정의됩니다. 제네릭을 사용하는 방법은 아래와 같습니다.
func 함수이름<제네릭이름>(매개변수: 제네릭타입) {
// 코드 작성
}
이와 같이 함수나 구조체, 열거형 등에서 제네릭을 사용할 수 있습니다.
예시
제네릭을 사용하여 스택(Stack)을 구현하는 예시를 살펴봅시다.
struct Stack<Elements> {
var items = [Elements]()
mutating func push(item: Elements) {
items.append(item)
}
mutating func pop() -> Elements {
return items.removeLast()
}
}
위 예시에서 Elements
는 제네릭 타입으로 사용되며, 이 스택은 다양한 타입의 아이템을 저장할 수 있게 됩니다.
제네릭을 사용하면 다양한 타입에 대해 유연하고 재사용 가능한 코드를 작성할 수 있습니다. 제네릭을 활용하여 스위프트의 강력한 타입 시스템을 최대한 활용해 보세요.
참고 문헌:
- 스위프트 공식 문서: Generics