오늘 공부한 내용
- X-code에 전체적인 코드에서 오류난 부분 한눈에 알아보는 법(map)
- nil coalescing operator 란?
오늘 X-code 로 코드를 짜던 중 이제서야 눈치채고 이상한 점을 찾았다. 보통 X-code를 쓰다보면 우측에 코드의 전체적인 맵이 보이면서 오류가 나면 어느 부분에서 오류가 났는지 직관적으로 보여야 하는데 그 맵이 안보였다ㅠㅠ
이렇게 코드를 전체적으로 보여주는 map이 나와야 하는데 내 화면은 저게 나오지 않아 코드를 짠 뒤에 실행했을 때 오류가 나면 어디서 오류가 난건지 한눈에 찾아보기가 힘들었다ㅠㅠ
X-code라는 것을 처음 접해본 개린이인 나에게는 어떤 설정이 저 map을 on/off 하는지 알 방법이 없어서 이것저것 다 해보다가 지인의 도움으로 해결했다.
우측 상단에 저 빨간색 네모안에 있는 버튼을 누른다.
그럼 저렇게 창이 열리는데 네모친 "Minimap"을 체크해주면 코드맵이 생성된다!!
Nil Coalescing Operator은 "nil 병합 연산" 이라고 한다. Coalescing 은 "하나로 합치다" 라는 뜻을 가지고 있다. nil 병합 연산자는 nil을 하나로 만들어 준다는 느낌으로 생각하면 된다.
nil 병합 연산자는 아주 간단하게 한줄로 언래핑을 할 수 있다는 장점이 있다.
Force unwrapping : !를 써서 강제로 옵셔널 추출
Optional Binding : if let, guard let 을 사용하여 옵셔널 추출
Optional Chaining : 체인의 형태처럼 연쇄적으로 옵셔널에 접근
Nil Coelascing Operator : ?? 을 써서 아주 간단히 언래핑
a ?? b
var num: Int?
var num2 = 3
let test = num ?? num2
print(test) //출력 결과: 3(num 값이 nil이기 때문에 3의 값이 선택됌.
var num: Int? = 10
var num2 = 6
let test = num ?? num2
print(test) //출력 결과: 10(num 값이 nil이 아니기 때문에 6의 값이 선택됌.)
var num: Int? = nil
var num2 = 12
let test = num ?? num2
print(test) //출력 결과: 12(num 값이 nil이기 때문에 12의 값이 선택됌.)