This is what defines your application and which controllers are a part of it.
You can see the similarities between Ember controllers and Angular controllers. Attributes and functions defined within the Angular controller are responsible for updating the view. Similar to how actions in the front-end and attributes in Ember controllers are responsible for updating Ember's views.
Directives in Angular can be seen as components in Ember.JS, isolated in scope, attributes, and their templates. <directive [args...]> = {{component [args...}}
I mean, they remind me of fetching things using Ember.$.ajax() or {request} via ic-ajax, for some initial data this could be called from the model {} function in a route, returning the initial data that is defined in the front-end.