Para que servem willSet e didSet em Swift? Observadores de propriedades
Olá a todos! Comecei a estudar Swift recentemente e me deparei com algo como `willSet` e `didSet`. Até entendo que está relacionado à alteração de propriedades, mas não consigo captar completamente para que eles servem.\n\nPor exemplo, tenho um aplicativo simples onde quero que, ao alterar o valor da variável `score`, o label na tela seja atualizado. Atualmente faço assim:\n\n```swift\nvar score = 0 {\n willSet {\n print("Em breve terá um novo valor: \\(newValue)")\n }\n didSet {\n print("O valor antigo era: \\(oldValue)")\n scoreLabel.text = "Pontos: \\(score)"\n }\n}\n```\n\nVejo que o código funciona, mas não entendo qual é a diferença de um método simples como `updateScore(newValue: Int)`, que eu chamo manualmente. Qual é a vantagem? Quando realmente preciso usar `willSet` e `didSet`?