MobX et Redux tentent de résoudre des problèmes similaires en utilisant des approches différentes. L'objectif principal étant la gestion de l'état dans les applications javascript.
Le problème central est ici la synchronisation efficace et optimale des informations entre votre source de données principale et l'interface utilisateur, par le biais de toutes les couches et de tous les mécanismes de transport que vous avez entre les deux.
@saiki lien a déjà écrit une excellente analyse comparative riche en exemples, qui vous aide à comprendre à quoi ressemblerait un code écrit en utilisant MobX vs Redux.
MobX adopte une approche souvent appelée MVVM déclaratif :
Redux adopte la programmation fonctionnelle et la transparence référentielle :
State est un simple objet javascript. On ne le modifie jamais directement, mais on obtient un nouvel état mis à jour lorsque quelque chose se produit dans l'application (ce qui entraîne l'exécution d'une action) par le biais de fonctions pures.
Pour plus de détails, vous pouvez consulter cet exemple parExemple