Avatar ·

Swift में willSet और didSet किसके लिए हैं? प्रॉपर्टी ऑब्ज़र्वर

सभी को नमस्ते! मैंने हाल ही में Swift सीखना शुरू किया है और `willSet` और `didSet` जैसी चीज़ पर ठोकर खाई है। लगता है कि यह प्रॉपर्टीज़ के बदलाव से संबंधित है, लेकिन मैं पूरी तरह से समझ नहीं पा रहा हूँ कि इनकी आखिर ज़रूरत क्यों है। उदाहरण के लिए, मेरे पास एक सरल ऐप है जहाँ मैं चाहता हूँ कि जब `score` वेरिएबल का मान बदले, तो स्क्रीन पर मेरा लेबल अपडेट हो जाए। अभी मैं ऐसा कर रहा हूँ: ```swift var score = 0 { willSet { print("जल्द ही नया मान होगा: \(newValue)") } didSet { print("पुराना मान था: \(oldValue)") scoreLabel.text = "अंक: \(score)" } } ``` मैं देख रहा हूँ कि कोड काम करता है, लेकिन मुझे समझ नहीं आ रहा कि यह एक साधारण मेथड जैसे `updateScore(newValue: Int)` से कैसे अलग है, जिसे मैं मैन्युअल रूप से कॉल करता हूँ। इसका फायदा क्या है? वास्तव में `willSet` और `didSet` का उपयोग कब करना चाहिए?