티스토리 뷰

assert 

- 특정 조건을 체크하고, 조건이 성립되지 않으면 메세지를 출력 하게 할 수 있는 함수

- assert 함수는 디버깅 모드에서만 동작하고 주로 디버깅 중 조건의 검증을 위하여 사용한다.

guard 문

- 뭔가를 검사하여 그 다음에 오는 코드를 실행할지 말지 결정 하는 것

- guard 문에 주어진 조건문이 거짓일 때 구문이 실행됨

assert

import Foundation

var value = 0
assert(value == 0)

value = 2 
aseert(value == 0, "값이 0이 아닙니다")

playground에서 코드를 작성하고 실행하면 런타임 에러가 발생한다.

assert 함수는 값을 실행하고 조건이 맞지 않으면 에러를 발생시키는 함수기 때문에 이렇게 나온다.

 

guard 

guard 조건 else {
	// 조건이 false 이면 else 구문이 실행되고
    return or throw or break 를 통해 이 후 코드를 실행하지 않도록 한다.
}
import UIKit

func guardTest(value: Int?) {
    guard let value = value else { return }
    print(value)
}

guardTest(value: 2)
guardTest(value: nil)

위에 코드를 실행하면 2만 찍힌다..! 

value 값을 옵셔널 값으로 지정하고 guard 구문을 통해 옵셔널 바인딩을 실행한다.

guard 문의 조건이 맞으면 통과되고 옵셔널 값을 벗긴다..!

nil 은 guard 문에 막혀 통과를 못해서 print 를 찍어도 아무것도 안나온다! 

 

assert 이번에 공부하면서 처음 봐서 개념에 대해 이해했고 ,,!

guard 는 밥 먹듯이 쓰이는 구문이라 공부와 응용이 필요하다고 생각해서 

다시 정리해보았다 ..! 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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 29 30 31
글 보관함