Яка різниця між ReactiveUI та MvvmCross?

0 Comments

MvvmCross використовує підхід до зв’язування даних на основі конвенцій, коли властивості та команди в ViewModel автоматично прив’язуються до відповідних представлень. ReactiveUI, з іншого боку, використовує більш реактивний і явний підхід до зв’язування даних.

Різниця в тому, що MVVM Light загортає багато з цього в локатор моделі перегляду— статичний клас, який використовується для реєстрації служб і отримання моделей перегляду. MvvmCross має деякий код налаштування, наданий фреймворком, і всередині цього коду налаштування ви ініціалізуєте вміст контейнера IoC.

MVVM Light, ймовірно, трохи більш поширений у спільноті, але MVVMCross набагато кращий, якщо ви плануєте розробляти для iOS та Android. Він також підтримує асинхронні команди, чого немає в MVVM Light, якщо ви не додасте зовнішні бібліотеки.

Prism — це зріла та багатофункціональна структура, яка зосереджена на модульності та зручності обслуговування, тоді як ReactiveUI наголошує на реактивному програмуванні та дозволяє обробляти складні потоки даних.

Ви, мабуть, уже знайомі з шаблонами MVVM (Model-View-ViewModel) і MVI (Model-View-Intent). Кожен має свої сильні та слабкі сторони. MVVM виділяється зв’язуванням даних і керуванням станом перегляду, тоді як MVI виділяється односпрямованим потоком даних і надійним керуванням станом.

Недоліки складності MVVM: MVVM – це надмірність, коли справа доходить до створення простих інтерфейсів користувача. Під час роботи над великими проектами розробка ViewModel для отримання потрібної кількості загальності може бути досить складною.