Aller sur skilly.com

Testez vos compétences et prouvez votre niveau d'expertise

L'œil de Skilly

Toutes les nouveautés High Tech pour les développeurs !

  • Actualités
  • Gourous du Code
  • Événements
  • Just for Fun
  • Quelques Chiffres

Angular JS : le framework Javascript par Google

0
  • par Geeko
  • dans Gourous du Code
  • — 1 août, 2013
AngularJS

AngularJS

 

Aujourd’hui, Geeko vous propose de découvrir Angular JS, le framework créé par des employés de Google pour créer (entre autres mais surtout) des web apps !

 

Angular : MVC et HTML étendu

Tout d’abord, qu’est-ce qu’Angular JS ? C’est un framework MVC (Model – View – Controller) pensé pour créer des applications CRUD (Create – Read – Update – Delete) tout en retirant l’interaction entre DOM et Javascript. Pourquoi ? Ceux qui utilisent régulièrement jQuery ou d’autres librairies savent que ce n’est pas toujours facile de « viser » correctement un élément pour le modifier. Et une fois modifié, il faut souvent faire des allers-retours entre le serveur, le HTML et le Javascript servant d’interface … Bref, toute une histoire se transformant rapidement en galère quand les modifications sont lourdes ! Les développeurs d’Angular l’ont pensé pour qu’il fonctionne sur un modèle différent : plutôt que de modifier les éléments du DOM directement en les pointant avec des id/classes à rallonge, ils ont décidés de transformer le HTML, de l’augmenter : au lieu d’utiliser du PHP ou du Ruby pour faire du templating, on utilisera directement le HTML en utilisant l’attribut « data » des tags.

Angular possède des directives permettant une manipulation immédiate du DOM. Un petit exemple :

<ul>
    <li data-ng-repeat="item in items">
        {{item.description}}
    </li>
</ul>

Ce petit bout de code permettra de créer une liste d’objet et d’afficher leur description … Plutôt simple non ? :) Grâce à la directive ng-repeat du framework, on va répéter le nœud dans lequel on se trouve. La partie {{item.description}} permet tout simplement d’aller chercher la valeur de l’attribut description de l’objet item. Cet objet peut tout à fait être conservé dans une collection et on entrevoit déjà une base NoSQL pour enregistrer les données …

En plus de cela, Angular permet un data-binding birectionnel. Cela signifie qu’en passant par le Model, des informations sont envoyées sur la View mais aussi inversement : si des modifications sont faites dans la View, le Model peut en être averti et agir en conséquence. Par exemple :

<ul>
    <li ng-repeat="item in items">
        {{item.description}}
        Edit description : <input type="text" data-ng-model="item.description">
    </li>
</ul>

Pour chaque <li>, on aura un petit champ permettant de changer la description de l’objet.

Bien sûr, on a également un Controller permettant de dire à l’app ce qu’elle doit faire pour chaque action de l’utilisateur et le Model qui se charge de chercher les données là où elles se trouvent. Et s’il s’agit d’aller chercher un JSON, ce n’est pas un problème, car Angular dispose d’un service permettant de faire de l’AJAX facilement : $http. Le fonctionnement est similaire à celui de jQuery :

$http.get('items/list.json').success(function (data) {
    $scope.items = data;
}

$scope est le service permettant de stocker les données du Model dans un objet pouvant être réutiliser dans la View. Ici, on lui dit de chercher le bon JSON et de l’inclure dans le service $scope, et le tour est joué. $scope permet aussi de stocker des fonctions qui seront ensuite réutilisables dans la View.

 

En bref, Angular JS est un framework bien sympathique pour créer des applications web. Vous avez prévu de l’utiliser pour une prochaine application ? Ou préférez-vous utiliser d’autres frameworks (Knockout, Ember, Backbone …) ?

 

Sources : le site officiel d’AngularJS, l’article sur le blog de Stéphane Bégaudeau, Webdesigner depot

Share

Articles liés

  • hibernate search Hibernate Search
  • Reconnaissance faciale PHP Reconnaissance faciale en full PHP (+librairie GD)
  • De l’importance de l’encre De l’importance de l’encre
  • Utilisation de variables très locales en C Utilisation de variables très locales en C

Laisser un commentaire Annuler la réponse.

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

  • Article précédent Mise en ligne du test Git
  • Article suivant Challenge WordPress – Une mallette de Poker à gagner !
    • Derniers Articles
    • Articles populaires
    • Tags
    • Challenge Node js Fb coverChallenge Node.js – Un chèque cadeau à gagner !20 octobre 2014
    • nodejs-logoNode.js disponible sur Skilly !15 octobre 2014
    • Challenge Ruby On Rails Fb coverChallenge Ruby On Rails – Un chèque cadeau à gagner !6 octobre 2014
    • CSS Week - Challenge de la semaine 15/07C’est la CSS Week !15 juillet 2013
    • CLI : PHP en ligne de commande5 février 2014
    • Reconnaissance faciale PHPReconnaissance faciale en full PHP (+librairie GD)23 juillet 2013
    • 1anDeTests Android Anniversaire ASP.NET C# Challenge Challenges compétence C Sharp CSS Dataviz Drupal Hibernate HTML5 infographie java jQuery linux MongoDB Monster Monster Race Moteur MySQL My SQL Node.js Objective-C PHP recherche Ruby On Rails Sauvegarde Scrum Search Skilly Spring Titanium Windows Server Wordpress
  • Pas encore fan ?

  • Catégories

    • Actualités
    • C
    • Challenges
    • Conférences
    • Événements
    • Gourous du Code
    • Hackathons
    • Hibernate
    • Javascript
    • Just for Fun
    • PHP
    • Quelques Chiffres
    • Skilly Inside
    • Tests de compétences
  • Activité récente

    • Marc dans Utilisation de variables très locales en C
    • Rafflin dans CLI : PHP en ligne de commande
    • Emma dans CLI : PHP en ligne de commande
    • Bernie_liege dans Reconnaissance faciale en full PHP (+librairie GD)
    • Geeko dans C’est la CSS Week !
  • Skilly est un site dédié aux professionnels de l’informatique, qui permet une auto-évaluation objective de son niveau sur une vingtaine de technologies IT.
  • Home
  • Gourous du Code
  • Angular JS : le framework Javascript par Google
  • Articles récents

    • Challenge Node.js – Un chèque cadeau à gagner !
    • Node.js disponible sur Skilly !
    • Challenge Ruby On Rails – Un chèque cadeau à gagner !
    • Ruby On Rails disponible sur Skilly !
    • Challenge MySQL – Un chèque cadeau à gagner !
  • Allez viens on est bien !

  • Twitter
    Skilly
    Skilly
    @SkillyFR

    @shafan_dev Bonjour Pierre, nous sommes toujours là :) Vous avez constaté un problème sur le site ? Je vous propose d'en parler en DM.

    Répondre Retweeter Favori
    9 h 18 min · 21 avril 2015
    Twitter
    Clever Institut
    Clever Institut
    @CleverInstitut

    Testez vos compétences GIT sur @SkillyFR et participez à notre prochaine formation du 29 et 30 janvier chez @CleverAge

    Répondre Retweeter Favori
    17 h 29 min · 19 janvier 2015 · Retweeté par Skilly
    Twitter
    Shmoolki
    Shmoolki
    @Shmoolki

    Dossier : Quand choisir #MySQL ou #NoSQL ? bit.ly/1Bl8baO MErci @SkillyFR

    Répondre Retweeter Favori
    9 h 52 min · 5 janvier 2015 · Retweeté par Skilly
    Twitter
    Skilly
    Skilly
    @SkillyFR

    L'équipe Skilly vous souhaite de très bonnes fêtes de fin d'année ! :) pic.twitter.com/jop1BxK8nw

    Répondre Retweeter Favori
    15 h 22 min · 24 décembre 2014
    Twitter
    Skilly
    Skilly
    @SkillyFR

    Cette semaine, on parle de Skilly dans @debugroomtv ! Regardez l'émission ici : debugroom.fr/debug-room-21-…

    Répondre Retweeter Favori
    17 h 04 min · 23 décembre 2014
  • Recherche

© COPYRIGHT 2013 L'ŒIL DE SKILLY