SlideShare a Scribd company logo
1 of 22
1




             AngularJS
11/10/2012    Yacine Rezgui – www.yrezgui.com
Qui suis-je ?
2


       Yacine Rezgui
       Développeur web & étudiant en licence pro
       7 ans dans le développement web
       20 ans (seulement ?)




                                      11/10/2012
JavaScript – Historique
3


       Créé en 1995 par Brendach Eich
       Pensé pour les navigateurs
       Syntaxe ECMAScript (utilisé par d’autres
        langages)
       Langage de programmation objet orienté
        prototype
       Actuellement en version 5



                                       11/10/2012
JavaScript – Au début
4




                            11/10/2012
JavaScript – Problèmes
5


       Déclaration facultative
       Incohérences (www.wtfjs.com)
       APIs HTML implémentées différemment
       Prototypage (pas vraiment un problème,
        question de goûts)
       Portée des variables
       Utilisé presque que pour gérer le DOM
       Jalousie ?

                                     11/10/2012
JavaScript – Renouveau
6


       L’ère de PrototypeJS et du web 2.0
       Les challengers comme jQuery et Mootools
       Toolkit complet tel que ExtJS et Dojo
       Framework JS avec Backbone.js et
        KnockoutJS
       Et bien sûr AngularJS !




                                     11/10/2012
AngularJS – What’s it ?
7


       Framework JavaScript pour des SPA (Single
        Page Application)
       Créé en Octobre 2010 par des développeurs
        de chez Google
       Pattern MVC
       Compatible avec Internet Explorer 7+ et autres
        navigateurs modernes
       Actuellement en version 1.0.2

                                       11/10/2012
AngularJS – What’s it ?
8


       La logique de l’application est déporté en
        grande partie dans le navigateur (client-side)
       Le serveur devient une API qui valide les
        données et renvoie une réponse
       Données renvoyés au format XML, JSON via
        une architecture de web services
        (SOAP, REST, XML-RPC)
       Fluidité pour l’application et charge du serveur
        nettement amoindrie
                                        11/10/2012
AngularJS – Exemple
9




                          11/10/2012
AngularJS – Exemple
10




                           11/10/2012
AngularJS – Exemple
11




                           11/10/2012
AngularJS – Les attributs ng-*
12




        Attributs dédiés à AngularJS
        Dynamisent le HTML
        Gestion des évènements
        Modifient le style des éléments
        Bref, il y en a pour tous les goûts




                                           11/10/2012
AngularJS – Gestion de la vue
13


        Gestion du DOM facultative
        $scope
        Two-way data binding
        Très rapide (redraw minimisé)
        Syntaxe à base de {{ le code }}




                                           11/10/2012
AngularJS – Gestion de la vue
14


        Ng-*:
         change, bind, init, style, mouseup, class, repeat




                                           11/10/2012
AngularJS – Les filtres
15


    Traitement ou filtrage des données
    Simplification syntaxique
    Différents filtres pré-inclus
     (filter, orderBy, date, currency)




                                          11/10/2012
AngularJS – Les services
16


        Classes communes aux contrôleurs
        Évite la redondance du code
        Singletons
        Parties privée et publique distinctes
        Services prédéfinis par AngularJS
         ($http, $route, $log, etc.)




                                         11/10/2012
AngularJS – Les contrôleurs
17


        Propre $scope
        Utilise des dépendances




                                   11/10/2012
AngularJS – Les directives
18


        Balise HTML personnalisée
        Syntaxe complète, par attribut ou par classe
        Propre $scope, template, contrôleur
        Très pratique pour les composants graphiques




                                      11/10/2012
AngularJS – Le routeur
19


                                Serveur Web

                                          transfère le
     effectue une requête                 routeur
             Ajax                                                    transfère
                              Application Web                  contrôleur + template
                                   (SPA)
                            en fonction de la route
                                   choisie
                                                               exécute le contrôleur
                                                               et compile le template

                                    Page
                                d’application

                                                         11/10/2012
AngularJS – Démo
20




            Loading…Please wait
     http://yrezgui.github.com/kodigon/



                            11/10/2012
AngularJS – Conclusion
21



           Avantages                 Inconvénients

    Two-way data binding      Syntaxe déroutante
    Projet soutenu par        Absence de gestion du
     Google                     DOM
    Pattern MVC respecté      Aucun composant
    Directives                 graphique
    Facilement testable       Projet encore jeune
    Modulable
                                     11/10/2012
AngularJS – Fin
22




             Questions ?



     Merci
                       11/10/2012

More Related Content

What's hot (20)

Angular.pdf
Angular.pdfAngular.pdf
Angular.pdf
 
Angular
AngularAngular
Angular
 
Angular
AngularAngular
Angular
 
Angular - Chapter 1 - Introduction
 Angular - Chapter 1 - Introduction Angular - Chapter 1 - Introduction
Angular - Chapter 1 - Introduction
 
Technologies sur angular.pptx
Technologies sur angular.pptxTechnologies sur angular.pptx
Technologies sur angular.pptx
 
Angular 11
Angular 11Angular 11
Angular 11
 
Angular overview
Angular overviewAngular overview
Angular overview
 
Cours 3 les directives
Cours 3 les directivesCours 3 les directives
Cours 3 les directives
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
 
Angular
AngularAngular
Angular
 
Angular Introduction By Surekha Gadkari
Angular Introduction By Surekha GadkariAngular Introduction By Surekha Gadkari
Angular Introduction By Surekha Gadkari
 
Angular js PPT
Angular js PPTAngular js PPT
Angular js PPT
 
Angular 2.0 forms
Angular 2.0 formsAngular 2.0 forms
Angular 2.0 forms
 
Angular Interview Questions & Answers
Angular Interview Questions & AnswersAngular Interview Questions & Answers
Angular Interview Questions & Answers
 
Introduction à Node.js
Introduction à Node.js Introduction à Node.js
Introduction à Node.js
 
Angular 8
Angular 8 Angular 8
Angular 8
 
Angular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP ServicesAngular - Chapter 7 - HTTP Services
Angular - Chapter 7 - HTTP Services
 
AngularJS
AngularJS AngularJS
AngularJS
 
Angular 9
Angular 9 Angular 9
Angular 9
 
Angular Dependency Injection
Angular Dependency InjectionAngular Dependency Injection
Angular Dependency Injection
 

Similar to AngularJS - Présentation (french)

Angluars js
Angluars jsAngluars js
Angluars jsRYMAA
 
Hello AngularJS - Back to the future
Hello AngularJS - Back to the futureHello AngularJS - Back to the future
Hello AngularJS - Back to the futureOuadie LAHDIOUI
 
Ionic, AngularJS,Cordova,NodeJS,Sass
Ionic, AngularJS,Cordova,NodeJS,SassIonic, AngularJS,Cordova,NodeJS,Sass
Ionic, AngularJS,Cordova,NodeJS,Sassmarwa baich
 
Angular JS - Paterne Gaye-Guingnido
Angular JS - Paterne Gaye-Guingnido Angular JS - Paterne Gaye-Guingnido
Angular JS - Paterne Gaye-Guingnido SOAT
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 Horacio Gonzalez
 
Cours n°1.1-Introduction.pdf angularrrrr
Cours n°1.1-Introduction.pdf angularrrrrCours n°1.1-Introduction.pdf angularrrrr
Cours n°1.1-Introduction.pdf angularrrrrinesrdissi60
 
Module 7 intégration d'ajax et les services web dans les applications asp.net
Module 7   intégration d'ajax et les services web dans les applications asp.netModule 7   intégration d'ajax et les services web dans les applications asp.net
Module 7 intégration d'ajax et les services web dans les applications asp.netMohammed Amine Mostefai
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogySacha Leprêtre
 
Quelles évolutions fonderont l’avenir des serveurs d’application ?
Quelles évolutions fonderont l’avenir des serveurs d’application ?Quelles évolutions fonderont l’avenir des serveurs d’application ?
Quelles évolutions fonderont l’avenir des serveurs d’application ?Marc Bojoly
 
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)Café Numérique Arlon
 
Comparatif des frameworks js mv
Comparatif des frameworks js mvComparatif des frameworks js mv
Comparatif des frameworks js mvMael Monnier
 
Petit déjeuner OCTO Technology - Nouvelles Architectures Web Front-End et APIs
Petit déjeuner OCTO Technology - Nouvelles Architectures Web Front-End et APIsPetit déjeuner OCTO Technology - Nouvelles Architectures Web Front-End et APIs
Petit déjeuner OCTO Technology - Nouvelles Architectures Web Front-End et APIsOCTO Technology
 
Petit déjeuner OCTO - Nouvelles Architectures Web Front-end et APIs
Petit déjeuner OCTO - Nouvelles Architectures Web Front-end et APIsPetit déjeuner OCTO - Nouvelles Architectures Web Front-end et APIs
Petit déjeuner OCTO - Nouvelles Architectures Web Front-end et APIsJonathan Meiss
 

Similar to AngularJS - Présentation (french) (20)

jQuery vs AngularJS
jQuery vs AngularJS jQuery vs AngularJS
jQuery vs AngularJS
 
Angluars js
Angluars jsAngluars js
Angluars js
 
Hello AngularJS - Back to the future
Hello AngularJS - Back to the futureHello AngularJS - Back to the future
Hello AngularJS - Back to the future
 
Retour d'experience projet AngularJS
Retour d'experience projet AngularJSRetour d'experience projet AngularJS
Retour d'experience projet AngularJS
 
CV REBAI Hamida
CV REBAI HamidaCV REBAI Hamida
CV REBAI Hamida
 
Ionic, AngularJS,Cordova,NodeJS,Sass
Ionic, AngularJS,Cordova,NodeJS,SassIonic, AngularJS,Cordova,NodeJS,Sass
Ionic, AngularJS,Cordova,NodeJS,Sass
 
Angular JS - Paterne Gaye-Guingnido
Angular JS - Paterne Gaye-Guingnido Angular JS - Paterne Gaye-Guingnido
Angular JS - Paterne Gaye-Guingnido
 
Framework JavaScript Web - Brief techno
Framework JavaScript Web - Brief technoFramework JavaScript Web - Brief techno
Framework JavaScript Web - Brief techno
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
 
Jquery Mobile vs Twitter Bootstrap
Jquery Mobile vs Twitter BootstrapJquery Mobile vs Twitter Bootstrap
Jquery Mobile vs Twitter Bootstrap
 
Cours n°1.1-Introduction.pdf angularrrrr
Cours n°1.1-Introduction.pdf angularrrrrCours n°1.1-Introduction.pdf angularrrrr
Cours n°1.1-Introduction.pdf angularrrrr
 
Module 7 intégration d'ajax et les services web dans les applications asp.net
Module 7   intégration d'ajax et les services web dans les applications asp.netModule 7   intégration d'ajax et les services web dans les applications asp.net
Module 7 intégration d'ajax et les services web dans les applications asp.net
 
Gwt
GwtGwt
Gwt
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
 
ngParis - Rendu cote serveur
ngParis - Rendu cote serveurngParis - Rendu cote serveur
ngParis - Rendu cote serveur
 
Quelles évolutions fonderont l’avenir des serveurs d’application ?
Quelles évolutions fonderont l’avenir des serveurs d’application ?Quelles évolutions fonderont l’avenir des serveurs d’application ?
Quelles évolutions fonderont l’avenir des serveurs d’application ?
 
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
Café Numérique Arlon S03#02: Je code mon blog (EU code week Arlon)
 
Comparatif des frameworks js mv
Comparatif des frameworks js mvComparatif des frameworks js mv
Comparatif des frameworks js mv
 
Petit déjeuner OCTO Technology - Nouvelles Architectures Web Front-End et APIs
Petit déjeuner OCTO Technology - Nouvelles Architectures Web Front-End et APIsPetit déjeuner OCTO Technology - Nouvelles Architectures Web Front-End et APIs
Petit déjeuner OCTO Technology - Nouvelles Architectures Web Front-End et APIs
 
Petit déjeuner OCTO - Nouvelles Architectures Web Front-end et APIs
Petit déjeuner OCTO - Nouvelles Architectures Web Front-end et APIsPetit déjeuner OCTO - Nouvelles Architectures Web Front-end et APIs
Petit déjeuner OCTO - Nouvelles Architectures Web Front-end et APIs
 

AngularJS - Présentation (french)

  • 1. 1 AngularJS 11/10/2012 Yacine Rezgui – www.yrezgui.com
  • 2. Qui suis-je ? 2  Yacine Rezgui  Développeur web & étudiant en licence pro  7 ans dans le développement web  20 ans (seulement ?) 11/10/2012
  • 3. JavaScript – Historique 3  Créé en 1995 par Brendach Eich  Pensé pour les navigateurs  Syntaxe ECMAScript (utilisé par d’autres langages)  Langage de programmation objet orienté prototype  Actuellement en version 5 11/10/2012
  • 4. JavaScript – Au début 4 11/10/2012
  • 5. JavaScript – Problèmes 5  Déclaration facultative  Incohérences (www.wtfjs.com)  APIs HTML implémentées différemment  Prototypage (pas vraiment un problème, question de goûts)  Portée des variables  Utilisé presque que pour gérer le DOM  Jalousie ? 11/10/2012
  • 6. JavaScript – Renouveau 6  L’ère de PrototypeJS et du web 2.0  Les challengers comme jQuery et Mootools  Toolkit complet tel que ExtJS et Dojo  Framework JS avec Backbone.js et KnockoutJS  Et bien sûr AngularJS ! 11/10/2012
  • 7. AngularJS – What’s it ? 7  Framework JavaScript pour des SPA (Single Page Application)  Créé en Octobre 2010 par des développeurs de chez Google  Pattern MVC  Compatible avec Internet Explorer 7+ et autres navigateurs modernes  Actuellement en version 1.0.2 11/10/2012
  • 8. AngularJS – What’s it ? 8  La logique de l’application est déporté en grande partie dans le navigateur (client-side)  Le serveur devient une API qui valide les données et renvoie une réponse  Données renvoyés au format XML, JSON via une architecture de web services (SOAP, REST, XML-RPC)  Fluidité pour l’application et charge du serveur nettement amoindrie 11/10/2012
  • 12. AngularJS – Les attributs ng-* 12  Attributs dédiés à AngularJS  Dynamisent le HTML  Gestion des évènements  Modifient le style des éléments  Bref, il y en a pour tous les goûts 11/10/2012
  • 13. AngularJS – Gestion de la vue 13  Gestion du DOM facultative  $scope  Two-way data binding  Très rapide (redraw minimisé)  Syntaxe à base de {{ le code }} 11/10/2012
  • 14. AngularJS – Gestion de la vue 14  Ng-*: change, bind, init, style, mouseup, class, repeat 11/10/2012
  • 15. AngularJS – Les filtres 15  Traitement ou filtrage des données  Simplification syntaxique  Différents filtres pré-inclus (filter, orderBy, date, currency) 11/10/2012
  • 16. AngularJS – Les services 16  Classes communes aux contrôleurs  Évite la redondance du code  Singletons  Parties privée et publique distinctes  Services prédéfinis par AngularJS ($http, $route, $log, etc.) 11/10/2012
  • 17. AngularJS – Les contrôleurs 17  Propre $scope  Utilise des dépendances 11/10/2012
  • 18. AngularJS – Les directives 18  Balise HTML personnalisée  Syntaxe complète, par attribut ou par classe  Propre $scope, template, contrôleur  Très pratique pour les composants graphiques 11/10/2012
  • 19. AngularJS – Le routeur 19 Serveur Web transfère le effectue une requête routeur Ajax transfère Application Web contrôleur + template (SPA) en fonction de la route choisie exécute le contrôleur et compile le template Page d’application 11/10/2012
  • 20. AngularJS – Démo 20 Loading…Please wait http://yrezgui.github.com/kodigon/ 11/10/2012
  • 21. AngularJS – Conclusion 21 Avantages Inconvénients  Two-way data binding  Syntaxe déroutante  Projet soutenu par  Absence de gestion du Google DOM  Pattern MVC respecté  Aucun composant  Directives graphique  Facilement testable  Projet encore jeune  Modulable 11/10/2012
  • 22. AngularJS – Fin 22 Questions ? Merci 11/10/2012