if let을 이용하여 옵셔널 바인딩을 하게되면 옵셔널이 추출된 변수나 상수를 if문 안에서만 사용할 수 있지만 guard 문을 이용하여 옵셔널 바인딩을 하게되면 guard문 다음 함수 전체 구문에서 추출된 변수나 상수를 사용할 수 있다.

guard문은 조건이 true일 때만 guard문을 통과하고 false일 때는 else구문을 수행한뒤 흐름을 종료시키는 문법

if let

guard let

Guard 사용하는 이점

if 대신 guard를 사용하는 것은

(1) 조건문을 만족하지 않을 때 처리가 확실하다.

(2) guard문의 사용 형태는 코드의 가독성을 높인다.

무효가 아닌 반환 값을 가져야 한다.