[swift] guard 문 사용하기

Swift에서 guard 문은 조건이 만족되지 않을 경우 조기에 빠져나오는 데 사용됩니다. guard 문은 if...else 문과 유사하지만, 조건이 만족되지 않을 경우 else 블록을 실행하는 대신 현재 범위를 종료합니다.

guard 문은 주로 함수 또는 메서드 내부에서 입력 매개변수의 유효성을 검사하고 조건이 만족되지 않을 경우 에러를 처리하는데 사용됩니다. 이를 통해 코드의 가독성을 향상시키고 오류를 조기에 처리할 수 있습니다.

다음은 guard 문의 기본 구문입니다.

guard condition else {
    // 조건이 만족되지 않을 경우 실행되는 코드
    // 조기에 종료하고 오류를 처리할 수 있습니다.
    return
}

여기서 condition은 불리언 값을 갖는 표현식으로, 조건이 만족되지 않을 경우 실행되는 블록을 지정합니다. else 블록 내부에는 조건이 만족되지 않을 때 실행할 코드를 작성하며, 일반적으로 함수나 메서드의 에러 처리 로직을 구현합니다. 만약 조건이 만족되면 guard 문을 빠져나가고 다음 코드를 계속 실행합니다.

여기서 실제 예제를 통해 guard 문의 사용법을 알아보겠습니다.

func divideNumbers(_ dividend: Int, _ divisor: Int) -> Int? {
    guard divisor != 0 else {
        // 0으로 나누는 경우 nil을 반환하고 종료합니다.
        return nil
    }

    return dividend / divisor
}

위의 예제는 두 개의 숫자를 인자로 받아 함께 나누는 divideNumbers 함수입니다. guard 문을 사용하여 divisor가 0인 경우에는 에러를 처리하고 종료합니다. 아니라면 dividenddivisor로 나눈 값을 반환합니다.

guard 문은 조건이 만족되지 않을 때 코드를 종료하므로, 코드를 조금 더 간결하고 가독성 있게 작성할 수 있습니다. 또한, 조건을 만족하지 않으면 빠져나가므로, 조건이 만족되었다는 가정으로 코드를 작성할 수 있습니다. 이는 프로그램의 신뢰성과 안정성을 높이는 데 도움이 됩니다.

더 자세한 내용은 공식 Swift 문서를 참고하시기 바랍니다.