개요
야곰님의 스위프트 프로그래밍 책을 읽던 도중 dump 함수라는 존재에 대하여 처음으로 알게 되었다..!
이제 iOS 개발을 시작한지 거의 1년차가 다 되어가지만 공부해서 시작한게 아닌 회사 업무으로 접하게 된 언어라 이런 자세한
부분들을 전에는 잘 몰랐던 것 같다. 그래서 그 동안 print로만 디버깅을 했는데 이 함수가 유용할 것 같아 글을 작성한다
dump 함수란?
dump 함수에 대해서 간략하게 설명하면 print 함수와 달리 더 자세한 정보들까지 출력해주는 함수이다
스위프트에서 제공해주는 기본 함수지만 다른 언어에서는 보기 쉬운 함수가 아니여서 몰랐던 함수였다
사용법은 print와 동일하다, 아래와 같이 사용하면 된다.
dump(...)
print 함수와의 차이점
print 함수는 출력하려는 인스턴스의 description 프로퍼티에 해당하는 내용을 출력해준다.
하지만 dump 함수는 출력하려는 인스턴스의 자세한 내부 콘텐츠까지 출력해준다.
야곰님의 스위프트 프로그래밍 3판이라는 책의 예제를 참고해보겠다.
struct BasicInformation{
let name: String
var age: Int
}
var yagomInfo: BasicInformation = BasicInformation(name: "yagom", age:99)
class Person{
var height: Float = 0.0
var weight: Float = 0.0
}
let yagom: Person = Person()
yagom.height = 182.5
yagom.weight = 78.5
print(yagomInfo) //Result : BasicInformation(name: "yagom", age:99)
dump(yagomInfo)
/* Result
BasicInformation
- name : "yagom"
- age: 99
*/
print(yagom) //Result : Person
dump(yagom)
/* Result
Person #0
- height: 182.5
- weight: 78.5
*/
위의 Result와 같이 dump함수에서의 정보가 더 자세하다는 점을 알 수 있다
앞으로는 필요에 따라 둘을 적절하게 섞어 사용하면 좋을 것 같다고 느꼈다.
'개발 공부 일기장 > iOS Develop' 카테고리의 다른 글
Swift를 스프링처럼 사용하기 - 1편 Swift의 인터페이스 Swift Protocol에 대해 알아보자! (0) | 2023.06.16 |
---|---|
Swift를 스프링처럼 사용하기 - 0편 Swift를 어떻게 Spring처럼 사용해? (0) | 2023.06.15 |
SwiftUI TextField Clear button - 텍스트 필드 내용 지우기, 초기화 (0) | 2023.05.31 |
Swift 명명 규칙 :: Swift 함수, 클래스 이름 짓기 (0) | 2022.12.04 |
Swift whose view is not in the window hierarchy 해결법 (0) | 2022.11.16 |