Peut-on forcer didSet à être appelé lors de l'initialisation en Swift ?
Bonjour ! Je suis nouveau en Swift et j'ai rencontré un comportement inattendu des observateurs de propriétés. J'ai une classe avec une stored property pour laquelle j'ai défini didSet afin d'effectuer une validation ou de mettre à jour l'UI à chaque changement de valeur. Mais j'ai remarqué que didSet n'est pas appelé lorsque je définis la valeur de la propriété dans l'initialiseur. Voici un exemple :
```swift
class Temperature {
var celsius: Double = 0 {
didSet {
print("La température a changé à \(celsius)°C")
// Ici je veux mettre à jour l'UI ou faire une validation
}
}
init(celsius: Double) {
self.celsius = celsius // didSet N'EST PAS appelé !
}
}
```
Lors de la création de l'objet `let temp = Temperature(celsius: 25)`, je m'attends à voir dans la console "La température a changé à 25.0°C", mais rien ne se passe. Je comprends que c'est une particularité de Swift, mais j'ai besoin que didSet s'exécute à chaque assignation, y compris lors de l'initialisation. Comment contourner cette limitation ? Existe-t-il une solution élégante ?