-
[Swift] didSet μ΄ νΈμΆλλ μ°λ λλ?iOS/π Swift 2022. 11. 6. 20:14
κ²°λ‘
- setter κ° νΈμΆλλ μ°λ λμμ didSet μ΄ νΈμΆλλ€.
- setter κ° λ΄λΆ μ½λμμ λ§μ§λ§μ didSet μ νΈμΆνλ κ²μΌλ‘ 보μΈλ€.
- setter λ κ° μ€μ μ½λκ° μ€νλ κ²μ΄λ€. (μμ: text = "abc")
- setter κ° λ§μ½ main thread μ΄ μλ μ°λ λ μμ μ€νλμλ€λ©΄, didSet λ ν΄λΉ μ°λ λ μμ μ€νλλ€.
κ·Έλμ?
- didSet λ΄λΆμ UI μ€μ μ½λλ₯Ό λ£κ³ μ€ννλ©΄ Main Thread Checker μ μν΄ κ²½κ³ λ©μμ§λ₯Ό λ§λ μ μλ€.
- UI μμ μ main thread μμ μ€νλμ΄μΌνλ©°, didSet μ main thread μμ μ€νλλ κ²μ 보μ₯νμ§ μκΈ° λλ¬Έμ΄λ€.
- μ΄ λλ ν΄λΉ μ½λκ° λ©μΈμ°λ λμμ μ€νλλλ‘ λ³΄μ₯νκ±°λ, property observer λ΄λΆμμλ μμ±νμ§ μμΌλ©΄ λλ€.
var text: String = "" { didSet { DispatchQueue.main.async { [weak self] in self?.label.text = text } } }
Property observer λ₯Ό μ 리ν κΈ
https://marsh-flavor-e1c.notion.site/Property-Observers-707524ab1fd641a58565a3519657fd09
μ€λλ λλ μ±μ₯νλ€!!π₯
π€ [Back to the Basics] π»
μ£Όλμ΄ iOS κ°λ°μ μ°μ§±μ κΈ°μ λΈλ‘κ·Έμ λλ€.[μ°Έκ³ μλ£ ππ»βοΈ]
thanks to. νΈμΉλ
https://docs.swift.org/swift-book/LanguageGuide/Properties.html
https://developer.apple.com/documentation/xcode/diagnosing-memory-thread-and-crash-issues-early
'iOS > π Swift' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
COW(Copy-on-Write) λ₯Ό μμ보μ (2) 2022.12.29 [Swift] Swift 5.8 CHANGELOG (0) 2022.11.27 [Swift] if case let λ₯Ό μ¬μ©νμ¬ λΆνμν μ½λ μ€μ΄κΈ° (4) 2022.01.16 [Swift] Any μ AnyObject (0) 2021.10.16 [Swift] Metatype μ΄λ? (2) 2021.10.02