title: data sharing approaches in Angular 2
body: <p>A question on data sharing among various components in an Angular 2 app. Currently the structure of my app resembles that of <a href="https://angular.io/docs/ts/latest/tutorial/toh-pt5.html" rel="nofollow">this one</a> in the tutorial, where Angular bootstraps the <code>AppComponent</code> and multiple components are routed from there. two questions:</p>
  
  <ol>
  <li><p>In this case, is <code>AppComponent</code> the "parent" of the other 2 components (namely Dashboard and Heroes as in the tutorial)? If so, is it good idea to store all the data as variables inside <code>AppComponent</code>, and then pass data to its children as necessary?</p></li>
  <li><p>Or, is it better to get all the data via http and cache them inside Service? Why?</p></li>
  </ol>
  
  <p>Thank you!</p>