으니의 개발로그

[Swift] 콘솔 로그(Console Log) / print() 함수와 dump() 함수 본문

Swift/책 정리

[Swift] 콘솔 로그(Console Log) / print() 함수와 dump() 함수

아잉으니야 2021. 1. 2. 20:11

[Swift] 콘솔 로그(Console Log) / print() 함수와 dump() 함수

이 글은 Swift 프로그래밍 책을 읽고 요약한 내용입니다.

 

콘솔 로그(Console Log) : 디버깅 중 디버깅 콘솔에 보여줄 로그

스위프트에서는 print() 또는 dump() 함수를 사용하여 콘솔 로그를 출력할 수 있음

 

print() 함수

  • 콘솔 로그를 남기는 용도로 print() 함수 사용

  • print() 함수의 기본 원형은 public func print(items: Any..., separator: String = default, terminator: String = default) 로 정의되어 있음

    • items : 보여줄 로그들

    • separator : items 사이에 들어갈 문자

    • terminator : items를 출력하고 마지막에 쓸 문자

    • print("Swift is awesome.")
      // Swift is awesome.
      print("Swift", "is", "awesome", separator: " ")
      // Swift is awesome
      print("SWift", "is", "awesome", separator: " ", terminator: ".")
      // Swift is awesome.
      
      print("Hello", terminator: " ")
      print("Swift!")
      // Hello Swift!
  • print("Hello Swift!") 와 같이 사용하면 디버깅 콘솔에서 'Hello Swift!' 라는 로그를 확인할 수 있음

  • print() 함수는 로그를 출력한 뒤 줄바꿈을 해주기 위해 줄바꿈 문자(\n) 를 자동으로 삽입해줌

 

print() vs dump()

print() : 디버깅 콘솔에 간략한 정보를 출력 / 출력하려는 인스턴스의 description 프로퍼티에 해당하는 내용을 출력

dump() : print() 함수보다 조금 더 자세한 정보를 출력 / 출력하려는 인스턴스의 자세한 내부 콘텐츠까지 출력

struct BasicInformation {
  let name: String
  var age: Int
}

var seonhoInfo: BasicInformation = BasicInformation(name: "seonho", age: 36)

class Person {
  var height: Float = 0.0
  var weight: Float = 0.0
}

let seonho: Person = Person()
seonho.height = 183.5
seonho.weight = 76.5

print(seonhoInfo)        // BasicInformation(name: "seonho", age: 36)
dump(seonhoInfo)
/*
▽ BasicInformation
- name: "seonho"
- age: 36
*/

print(seonho)        // Person
dump(seonho)
/*
▽ Person: #0
- height: 183.5
- weight: 76.5
*/