Reaktif programlama ve MVVM, etki alanı katmanını kullanıcı arayüzünden ayırma sorununu çözebilen iki yaklaşımdır.
- MVVM bunu UI bileşenlerine eşlenen bir veri yapısı olan bir viewmodel tanımlayarak yapar. Kullanıcı arayüzü verileri görüntüler ve kullanıcı gerçekleştiğinde günceller.
- reaktif bir çerçeve, kullanıcı arayüzüne bazı verilerin değiştiğini bildiren gözlemlenebilir bir grafik tanımlar
Reaktif çerçeveler, hem genel platformlarda (.net & java'da Rx ile, reakt.js ile) hem de daha fazla deneysel yerde (haskell'de FRP) akıl payı kazanıyor.
Esas olarak açısal olarak MVVM kullandım ve sadece küçük / orta ölçekli projeler üzerinde çalışmama rağmen ifade-basitlik oranını oldukça tatmin edici buluyorum.
Mvvm'nin geliştirmediği reaktif bir çerçeve ne satın alıyor?
Gerçekten bir fark var mı? Örneğin, knockout.js bir mvvm çerçevesi olarak ilan edilir, ancak arayüzünde reaktif bir his vardır:
this.firstName = ko.observable("John");
this.lastName = ko.observable("Smith");
this.fullName = ko.computed(function() {
return this.firstName() + " " + this.lastName();
}, this);