هل يمكن جعل didSet يستدعى أثناء التهيئة في Swift؟
مرحباً! أنا مبتدئ في Swift وقد واجهت سلوكاً غير متوقع لمراقبي الخصائص. لدي كلاس مع خاصية مخزنة قمت بتعيين didSet لها للتحقق من الصحة أو تحديث واجهة المستخدم في كل مرة تتغير فيها القيمة. لكن لاحظت أن didSet لا يتم استدعاؤه عندما أقوم بتعيين قيمة الخاصية في المُهيئ. إليك مثال:
```swift
class Temperature {
var celsius: Double = 0 {
didSet {
print("تغيرت درجة الحرارة إلى \(celsius)°C")
// هنا أريد تحديث واجهة المستخدم أو إجراء التحقق من الصحة
}
}
init(celsius: Double) {
self.celsius = celsius // didSet لا يتم استدعاؤه!
}
}
```
عند إنشاء كائن `let temp = Temperature(celsius: 25)` أتوقع رؤية "تغيرت درجة الحرارة إلى 25.0°C" في وحدة التحكم، لكن لا يحدث شيء. أفهم أن هذه ميزة في Swift، لكنني أحتاج إلى أن يعمل didSet مع أي تعيين، بما في ذلك التهيئة. كيف يمكنني تجاوز هذا القيد؟ هل هناك طريقة أنيقة؟