Optional - 기능 4가지
박스를 뜯는 경우를 생각해보자 (매우 자연스럽고 적합한 비유의 예제는 아니다 ..) 1. [Forced unwrapping] 인정사정없이 박스를 강제로 뜯는다 내용물이 있으면 정상이지만, 내용물이 없는경우 컴파일 에러가 발생하게 된다. 2. [Optional binding (if let)] 부드럽게 박스를 개봉한다 컴파일에러는 발생하지 않지만, if문이 다중으로 쓰이므로 deps level이 깊다. 이는 Cyclomatic Complexity가 높은(복잡성이 높은) 코드다. 3. [Optional binding (guard)] 부드럽게 박스를 개봉한다 if를 하나 줄였으므로, 이전 코드보다는 복잡성이 줄어들었다. 4. [Nil coalescing] 박스를 개봉했을 때, 비어있으면 디폴트 값을 준다 이건 ..
Swift
2020. 12. 12. 00:00