Avatar ·

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

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