Guard에 대해서는 설명이 잘 나온 글들이 많다.
완벽하게 이해하지는 못하였지만 느낌은 알 것 같은..
설명은 쓸 수 없지만.. 잊지않기 위해 활용한 소스라도 올려본다.
* 처음 테스트로 작성한 코드
var ValueNil:String? = nil ValueNil = "Guard" func guardTest() { guard ValueNil != nil else { print("bad") return } print(ValueNil) } guardTest() // 출력은 Optional("Guard") |
- 그러나 여기서 Optional이 붙어 버리니 어찌해야하나..
- Guard 부분에서 nil을 체크하였기 때문에 print에서 "!" 를 붙여도 상관이 없음.
- 그러나 "!" 자체가 불안하다.
- 그래서 물어본 결과...단순한 사실을 잊고 있었다.
var ValueNil:String? = nil ValueNil = "Guard" func guardTest() { guard let tmp = ValueNil else { print("bad") return } print(tmp) } guardTest() // 출력은 Guard |
- guard를 사용하게 되면 이후 소스에서도 계속적으로 언래핑된다는 것이다.
- 쓸데없는 if let을 사용을 줄일 수가 있다고 한다.
'iOS-Develop(Swift)' 카테고리의 다른 글
itunes Connect 에서 tvOS 앱 삭제방법 (0) | 2016.10.26 |
---|---|
다중 스토리보드 사용법 (0) | 2016.09.23 |
Guard 활용 (0) | 2016.09.13 |
아이폰7(?) 발표 5시간전 apple developer 등록이 안된다 (0) | 2016.09.07 |
xcode 자동 줄바꿈 설정 (0) | 2016.09.07 |
app심사 및 itunes connect 사용법 링크 (0) | 2016.09.01 |