[Swift] 프로퍼티 옵저버

2023. 6. 19. 20:06Swift 이해/Swift 문법

프로퍼티 옵저버(Property Observer) 란?

프로퍼티의 값이 변경될 때 특정 동작을 수행하는 기능으로 '저장 프로퍼티'에 추가할 수 있다. 

 

 

1. willSet : 프로퍼티의 값이 변경되기 직전에 호출되는 옵저버 (주로 newValue와 함께 사용)

2. didSet :  프로퍼티의 값이 변경된 후에 호출되는 옵저버 (주로 oldValue와 함께 사용)

class Counter {
    var value: Int {
        willSet(newValue) {
            print("값이 변경될 예정입니다: 현재 값: \(value), 변경될 값: \(newValue)")
        }
        didSet(oldValue) {
            print("값이 변경되었습니다: \(value), 변경되기 전 값: \(oldValue)")
        }
    }
    
    init() {
        self.value = 0
    }
    
    func increment() {
        value += 1
    }
}

let counter = Counter()
counter.increment()

// 값이 변경될 예정입니다: 현재 값: 0, 변경될 값: 1
// 값이 변경되었습니다: 1, 변경되기 전 값: 0

순서

  1. willSet 실행
  2. 저장 프로퍼티 name 값 변경
  3. didSet 실행

'Swift 이해 > Swift 문법' 카테고리의 다른 글

함수  (0) 2023.05.16
반복문  (0) 2023.05.14
조건문  (0) 2023.05.07
컬렉션 데이터 타입  (0) 2023.05.04
변수와 상수 , 자료형 , 기본 데이터 타입  (0) 2023.05.03