Adam Hurwitz
1 min readJul 23, 2020

--

The definition of the ViewModel not containing reference to the view also applies to MVI.

When familiarizing myself with MVI I recognized the FeedView interface naming is confusing. The FeedView interface passes the intent or action Flows to the ViewModel, and renders the view state data back to the view. It is only a “view” in the naming convention. No views, resources, context, etc. should be passed through the FeedView interface.

It represents the contract between the view and the ViewModel. I’m open to considering moving away from existing MVI examples’ naming conventions, in favor of a name that causes less confusion. Perhaps FeedViewContract, FeedContract, FeedRenderContract

--

--

Adam Hurwitz

An account about nothing | Researcher and product consultant