Estrutura observável simples com RxSwift?
Estou tentando criar um objeto observável simples no Swift e pensei em usarRxSwift. Não consegui encontrar um exemplo simples para fazer algo assim:
protocol PropertyObservable {
typealias PropertyType
var propertyChanged: Event<(PropertyType, Any)> { get }
}
class Car: PropertyObservable {
typealias PropertyType = CarProperty
let propertyChanged = Event<(CarProperty, Any)>()
dynamic var miles: Int = 0 {
didSet {
propertyChanged.raise(.Miles, oldValue as Any)
}
}
dynamic var name: String = "Turbo" {
didSet {
propertyChanged.raise(.Name, oldValue as Any)
}
}
}
O acima é uma solução Swift pura para observáveis deesta postagem no blog; Eu realmente gosto de como é uma solução baseada em protocolo e não invasiva. No meu caso, tenho um objeto no meu projeto em que cada propriedade é definida de forma assíncrona sob o capô (dispositivo bluetooth). Então, preciso observar / assinar as alterações em vez de obter / definir as propriedades em tempo real.
Continuo ouvindo que o RxSwift fará exatamente isso e muito mais. No entanto, não consigo encontrar um exemplo simples para corresponder acima e começar a pensar que o RxSwift é um exagero para minha necessidade? Obrigado por qualquer ajuda.