title: ObservableObject or INotifyPropertyChanged on ViewModels
body: <p>I was curious what was the best thing to do with <code>ViewModels</code>. Is it better to implement the interface <code>INotifyPropertyChanged</code> or to derive from <code>ObservableObject</code>.</p>
  
  <p><code>ObservableObject</code> class implements <code>INotifyPropertyChanged</code> and do some of the boring code like <code>RaisePropertyChanged</code>. </p>
  
  <p><code>INotifyPropertyChanged</code> require to implement <code>PropertyChanged</code> event. </p>
  
  <p>From my point of view it seems more logical to use <code>ObservableObject</code>, but in most of the tutorial they implement <code>INotifyPropertyChanged</code> interface on their <code>ViewModel</code>.</p>
  
  <p>Do you think it's for the sake of simplicity or there's a logical reason ?</p>