ICYBER-CORP. Développement informatique - AngularJS

AngularJS

AngularJS est un framework JavaScript libre et open source développé par Google.

Il est fondé sur l’extension du langage HTML par de nouvelles balises et attributs pour aboutir à une définition déclarative des pages web.

Le code HTML étendu représente alors la partie « vue » du MVC auquel AngularJS adhère, avec des modèles appelés « scopes » et des contrôleurs permettant de définir des actions en code JavaScript impératif.

AngularJS utilise une boucle de dirty-checking qui consiste à surveiller et à détecter des modifications sur un objet JavaScript pour réaliser un data-binding bidirectionnel permettant la synchronisation automatique des modèles et des vues.

AngularJS embarque un sous-ensemble de la bibliothèque open source jQuery appelé jQLite, mais peut aussi utiliser jQuery si elle est chargée.

Outre le MVC et le code HTML étendu déclaratif, AngularJS est fondé sur un certain nombre de patrons et principes de conception qu’il convient de relever :         

AngularJS est fondé sur l'idée que la programmation déclarative doit être utilisée pour construire les interfaces utilisateur et les composants logiciels de câblage, tandis que la programmation impérative excelle pour exprimer la logique métier. Le framework adapte et étend le HTML traditionnel pour servir le contenu dynamique de façon améliorée grâce à un data-binding bidirectionnel permettant la synchronisation automatique des modèles et des vues. En conséquence, AngularJS minore l'importance des manipulations DOM et améliore la testabilité du code.

Objectifs de conception du framework :

  • Découpler les manipulations du DOM de la logique métier. Cela améliore la testabilité du code.
  • Considérer le test d'une application aussi important que l'écriture de l'application elle-même. La difficulté de la phase de test est considérablement impactée par la façon dont le code est structuré.
  • Découpler les côtés client et serveur d'une application. Cela permet au développement logiciel des côtés client et serveur de progresser en parallèle, et permet la réutilisabilité de chacun des côtés.
  • Guider les développeurs pendant toute la durée du périple de la construction d'une application : de la conception de l'interface utilisateur, en passant par l'écriture de la logique métier, jusqu'au test de l'application.
  • Rendre les tâches faciles évidentes et les tâches difficiles possibles.

En utilisant l'injection de dépendances, Angular apporte aux applications web côté client les services traditionnellement apportés côté serveur, comme les contrôleurs de vues. En conséquence, une bonne partie du fardeau supporté par le back-end est supprimée, ce qui conduit à des applications web beaucoup plus légères.

 

Site officiel

Tutoriel