INotifyPropertyChanged vs DependencyProperty en ViewModel

Al implementar ViewModel en una aplicación WPF de arquitectura Model-View-ViewModel, parece que hay dos opciones principales para hacer que se pueda enlazar con datos. He visto implementaciones que usanDependencyProperty para propiedades, la vista se va a unir y he visto la implementación de ViewModelINotifyPropertyChanged en lugar.

Mi pregunta es ¿cuándo debería preferir uno sobre el otro? ¿Hay alguna diferencia de rendimiento? ¿Es realmente una buena idea dar las dependencias de ViewModel a WPF? ¿Qué más debo tener en cuenta al tomar la decisión de diseño?

Respuestas a la pregunta(14)

Su respuesta a la pregunta