[swift] 구조체의 타입 메서드 정의하기

구조체에는 인스턴스 메서드뿐만 아니라 타입 메서드도 정의할 수 있습니다. 타입 메서드는 인스턴스 없이 호출될 수 있는 메서드로, 특정 타입에 대한 작업을 수행하는데 사용됩니다.

타입 메서드는 static 키워드를 사용하여 정의됩니다. 이 키워드를 사용하여 해당 메서드가 인스턴스가 아닌 타입에 속하도록 지정합니다.

아래는 간단한 구조체와 해당 구조체에 타입 메서드를 정의하는 예제입니다.

struct MathUtility {
    static func calculateSquare(_ number: Int) -> Int {
        return number * number
    }
}

let result = MathUtility.calculateSquare(5)
print(result) // 25

위 예제에서 calculateSquare 메서드는 MathUtility 타입에 속하고, 해당 타입의 모든 인스턴스에는 적용되지 않습니다. 따라서 인스턴스를 생성하지 않고 바로 MathUtility.calculateSquare(5)와 같이 호출할 수 있습니다.

구조체에 타입 메서드를 추가함으로써 더 유연하고 강력한 코드를 작성할 수 있습니다.

참고: The Swift Programming Language - Type Methods