Components and directives in angular 1.5
<p>The big feature changes in <a href="http://angularjs.blogspot.no/" rel="nofollow noreferrer">Angular 1.5</a> are surrounding the support of <a href="https://docs.angularjs.org/guide/component" rel="nofollow noreferrer">components</a>.</p>

<pre><code>component('myComponent', {
  template: '&lt;h1&gt;Hello {{ $ctrl.getFullName() }}&lt;/h1&gt;',
  bindings: { firstName: '&lt;', lastName: '&lt;' },
  controller: function() {
    this.getFullName = function() {
      return this.firstName + ' ' + this.lastName;
    };
  }
});
</code></pre>

<p>While this is all good, I am not sure how this differs from directives.
What are the benefits of using <code>components</code> over traditional custom directives? And are components in Angular 1.5 and Angular 2 the same?</p>