Your viewmodels should inherit from ReactiveObject
Use IActivatableViewModel
and WhenActivated
for lifecycle
Keep references to your subscriptions
Use disposables to manage lifetime, scope and resources:
Don't use eventhandlers, use the extension methods shipped in ReactiveMarbles.ObservableEvents.SourceGenerator
instead
Use your normal iOS concepts that you would usually use in iOS development, we have some base classes which you should use as they expose observables such as Changed
, Changing
and Deactivated
that can be used for composition.