Pourquoi MVVM et quels sont ses principaux avantages?

Pourquoi nous aller pour MVVM sur MVC ou MVP, tout en traitant avec WPF?

Quel avantage supplémentaire, nous obtenons en utilisant ce?

Edit:

Pour être honnête , aujourd'hui j'ai eu un entretien et j'ai été demandé à cette question. J'ai répondu comme INotifyPropertyChanged , ICommand,IValue Convertisseur.. mais il n'était pas satisfait. Désormais, j'ai mis en place cette question

Merci d'avance

  • J'ai toujours regardé MVVM comme une variation de la MVC.