はじめに RxSwiftやReactiveCocoaなどのReactive Programmingを実現するフレームワークを利用する方が増えているので、もともとデータバインディングの機構がなかったiOSアプリ開発においてもMVVMを用いるられる機会が増えつつあると思います。 そのため、RxSwfitなどを用いてデータバインディングを行うデザインパターン = MVVMという雰囲気が漂っている気がしています。 MVVM MVVMは、View・ViewModel・Modelによって構成されます。 Viewはユーザーからのアクションを受け取って、そのイベントをViewModelにバインドします。 そして、そのバインドされたイベントによってViewModelはModelの取得や更新を行います。 ViewModelは更新された情報をイベントとしてViewにバインドし、Viewはバインドされたイベントを