Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

ReactiveX と MVVM と DataBinding の関係について図にしてみた

More than 3 years have passed since last update.

などなどをいろいろ眺めておりまして(東京うらやましい)、Reactive Extensions とか MVVM とかいろいろ熱い!楽しい!と思っているわけですが、いろいろなライブラリがあって、それらのカバーする範囲がいまいち明確になってない気がしたので、自分なりに整理してみました。

MVVM っていうと、Messenger とか DIコンテナ的なものとかもあるわけですが、主に DataBinding と Rx の違いにフィーチャーしたかったので除外しました。

 DataBinding は、DependencyPropertyBindableProperty みたいなものがあるかどうかという感じで考えていて、「XAMLとかのマークアップでバインディング指定できなければならない」という考えではないです。

 View, DataBinding, ViewModel, ReactiveX の各ブロックは基本的にはどの組み合わせでもよくて(特に ReactiveX は他とは別の世界のものなので)、しかし中には ReactiveProperty のように ReactiveX に依存しつつ ViewModel の機能を提供するものがあったり、ReactiveCocoa のように「全部入り」のものがあったりします。また、View と ViewModel を繋ぐためにはなんらかの DataBinding が必要です。

という理解なんですが、あってますかね?

 私は Xamarin 推しの人なので、 Xamarin.Forms + ReactiveProperty が、MVVM+Rx のパワーをフル活用できて、しかも iOS/Android で大部分のコードが共有できるという最強の組み合わせなんですよ! というのを言いたいわけです。

Links

amay077
ランチの時は呼ぶといい!
https://blog.amay077.net/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away