Nous recrutons: Tu es un IT qui souhaite travailler en Node, Python, Serverless et Cloud dans l'IA ?

Blog

angular

Angular 2, Tour d’horizon

Logiciel Web

Angular 2, Tour d’horizon

La version 2.0 d’Angular a maintenant été annoncée depuis un moment comme une refonte complète, et en voyant les importants changements entre les 2 versions, on peut dire que nous avons un gros travail de mise à niveau à fournir. Alors autant prendre un peu d’avance !

 

Angular 2.0 et TypeScript

Première chose à noter, Google et Microsoft collaborent pour écrire cette version Angular 2.0 avec le langage TypeScript.

TypeScript est un langage typé créé par Microsoft qui est un surensemble de ES6. Il apporte entre autres les annotations, l’introspection et le typage au JavaScript.

 

RIP au $scope et à JqLite

Le super $scope qui sert dans la version 1 de lien entre les vues et les contrôleurs a été retiré.

angular.element et son mini jQuery embarqué par la première version d’Angular s’en vont aussi.

 

Components, components & components…

Le MVW pattern est remplacé par le concept des components, afin d’avoir des briques autosuffisantes.

Un composant comprend donc une classe JavaScript qui est le contrôleur, il se concentre sur la logique propre au composant, et des annotations qui définissent sa configuration.

Un rapprochement similaire à React. Faut dire aussi que le principe des components est un standard prochainement introduit en HTML5 auquel Polymer reproduit à la perfection.

 

Migration…

… Un gros mot ? Si on s’en tient à l’idée qu’une migration est entièrement automatisable, alors oui une telle migration n’est pas envisageable pour passer d’Angular 1 à Angular 2.

 

Anticipation

Néanmoins, il est envisageable d’anticiper un passage de l’un à l’autre. Voici nos conseils :

  • Au lieu des controllers, implémenter des components : il est en effet possible de basculer vos .directive() en .component() (présent dans Angular 1.5) ;
  • Supprimez les références à $scope, ces derniers disparaissent. Attachez vos variables au this pour les rendre accessibles dans vos templates et utilisez l’attribut controllerAs des directives ;
  • Privilégiez les services : en sortant un maximum de logique métier vers les services
  • Enfin… intégrez TypeScript à votre base de code !

 

Notre avis

Angular 2, bien que toujours au stade du développement, est un framework prometteur. Certes, il sacrifie toute velléité de migration sans douleur vers l’innovation, mais le jeu en vaut réellement la chandelle.

Avantages :

  • des performances améliorées
  • composants autosuffisants
  • un respect des nouveaux standards du web avec des components

Inconvénients :

  • migration compliquée
  • pas de version définitive / manque de stabilité