title: Best practice for using $rootscope in an Angularjs application?
body: <p>We have a large Angularjs 1.6 application that has $rootscope scattered throughout the app in over 200 places in filters, services, routes, etc.. so it needs to be refactored, but I'm not sure how to know when to remove it.  When is it a best practice to use $rootscope in the application?  </p>
  
  <p>I've read everything from never, to using it for storing variables, which I assumed was for sharing data between controllers.  I've since read that it's better to use factories/services for this use case instead and I also read that one valid use case is to use $rootscope as a global event bus. </p>
  
  <p>I didn't really see this explained in the Angularjs docs.</p>