MVVM Frameworks
- .NET Community MVVM Toolkit.
- ReactiveUI.
- Бібліотека Prism.
Набір інструментів MVVM є чудовий спосіб стандартизувати та спростити наш код ViewModel. Набір інструментів MVVM пропонує чудові реалізації стандартних компонентів MVVM, таких як ObservableObject і Async/RelayCommand.
Найважливішим аспектом WPF, який робить MVVM чудовим шаблоном для використання, є інфраструктура зв’язування даних. Прив’язуючи властивості представлення до ViewModel, ви отримуєте слабкий зв’язок між ними та повністю усуваєте потребу писати код у ViewModel, який безпосередньо оновлює представлення.
І Prism, і MvvmLight мають реалізацію Mediator (IEventAggregator у Prism, IMessenger у MvvmLight). Але IMessenger має більше можливостей (наприклад, надсилання повідомлень за допомогою токенів) порівняно з IEventAggregator і набагато зручніший у використанні (див. наступний пункт). MvvmLight також має потужніший клас ViewModelBase.
MVC: шаблон за замовчуванням, який використовується в розробці iOS. Це просто і зрозуміло, але може призвести до масивних контролерів перегляду. MVVM: забезпечує кращий розподіл проблем, переміщуючи бізнес-логіку в ViewModel, роблячи контролери перегляду легшими, а кодову базу більш придатною для перевірки.